当前位置: 首页 > wzjs >正文

公司网站建设开发维护工作总结室内设计在线生成

公司网站建设开发维护工作总结,室内设计在线生成,乐都营销型网站建设,网站搭建配置目录 1. 文件与常见文件操作 1.1 文件概念 1.2 常见文件操作 2. Java IO 流原理及分类 2.1 原理 2.2 分类 3. 基本流类介绍 3.1 FileInputStream 3.2 FileOutputStream 3.3 FileReader ​编辑 3.4 FileWriter ​编辑 4. 节点流和处理流 4.1 节点流 4.2 处理流(包…

目录

1. 文件与常见文件操作

1.1 文件概念

1.2 常见文件操作

2. Java IO 流原理及分类

2.1 原理

2.2 分类

3. 基本流类介绍

3.1 FileInputStream

3.2 FileOutputStream

3.3 FileReader

​编辑

3.4 FileWriter

​编辑

4. 节点流和处理流

4.1 节点流

4.2 处理流(包装流)

4.3 节点流和处理流的区别和联系

5. 打印流

5.1 PrintStream 和 PrintWriter

6. Properties 类


1. 文件与常见文件操作

1.1 文件概念

在计算机中,文件是存储在存储设备(如硬盘、U 盘等)上的数据集合,可以是文本文件(如 .txt.java)、二进制文件(如 .jpg.mp3)等。大家经常使用的word文档,txt文件、excel文件...都是文件。

文件在程序中是以流的形式操作的

1.2 常见文件操作

创建文件对象相关构造器和方法

new File(String pathname) //根据路径构建一个File对象
new File(File parent,String child)//根据父目录文件+子路径构建
new File(String parent,String child)//根据父目录+子路径构建

文件创建、获取文件的信息、删除

import java.io.File;
import java.io.IOException;public class FileExample {public static void main(String[] args) {// 创建一个 File 对象,指向一个文件File file = new File("test.txt");try {// 创建新文件if (file.createNewFile()) {System.out.println("文件创建成功");} else {System.out.println("文件已存在");}// 获取文件信息System.out.println("文件名称: " + file.getName());System.out.println("文件路径: " + file.getAbsolutePath());System.out.println("文件大小: " + file.length() + " 字节");// 删除文件if (file.delete()) {System.out.println("文件删除成功");} else {System.out.println("文件删除失败");}} catch (IOException e) {e.printStackTrace();}}
}

2. Java IO 流原理及分类

2.1 原理

Java IO 流是一种用于处理输入输出的机制,它通过流的方式将数据从一个源(如文件、网络连接等)传输到另一个目标(如另一个文件、控制台等)。可以把流想象成一个管道,数据在管道中流动。

2.2 分类
  • 按数据流向分
    • 输入流:用于从数据源读取数据到程序中。
    • 输出流:用于将程序中的数据写入到目标位置。
  • 按处理数据的单位分
    • 字节流:以字节(8 位)为单位处理数据,适合处理二进制数据。
    • 字符流:以字符(16 位)为单位处理数据,适合处理文本数据。

3. 基本流类介绍

3.1 FileInputStream

FileInputStream 是字节输入流,用于从文件中读取字节数据。

import java.io.FileInputStream;
import java.io.IOException;public class FileInputStreamExample {public static void main(String[] args) {try (FileInputStream fis = new FileInputStream("test.txt")) {int data;while ((data = fis.read()) != -1) {System.out.print((char) data);}} catch (IOException e) {e.printStackTrace();}}
}
3.2 FileOutputStream

FileOutputStream 是字节输出流,用于将字节数据写入到文件中。

import java.io.FileOutputStream;
import java.io.IOException;public class FileOutputStreamExample {public static void main(String[] args) {String content = "Hello, Java IO!";try (FileOutputStream fos = new FileOutputStream("test.txt")) {byte[] bytes = content.getBytes();fos.write(bytes);System.out.println("数据写入成功");} catch (IOException e) {e.printStackTrace();}}
}
3.3 FileReader

FileReader 是字符输入流,用于从文件中读取字符数据。

import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;public class Filereader {public static void main(String[] args) throws IOException {String filePath = "d://news1.txt";String fileOut = "d://news2.txt";FileReader fileReader = new FileReader(filePath);FileWriter fileWriter = new FileWriter(fileOut);int readLen = 0;char[] buf = new char[8];while((readLen = fileReader.read(buf)) != -1){fileWriter.write(buf,0,readLen);}fileWriter.close();fileReader.close();}
}
3.4 FileWriter

FileWriter 是字符输出流,用于将字符数据写入到文件中。

import org.junit.jupiter.api.Test;
import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.charset.StandardCharsets;public class Fileoutputstream {@Testpublic void WriteFile(){String filePath = "d://news2.txt";FileOutputStream fileOutputStream = null;try {fileOutputStream = new FileOutputStream(filePath);String str = "hello韩顺平";fileOutputStream.write(str.getBytes(StandardCharsets.UTF_8));} catch (IOException e) {e.printStackTrace();}finally {try {fileOutputStream.close();//文件流关闭} catch (IOException e) {e.printStackTrace();}}}
}

4. 节点流和处理流

4.1 节点流

节点流是直接与数据源或目标相连的流,如 FileInputStreamFileOutputStreamFileReaderFileWriter 等,它们可以直接从文件、内存等数据源读取或写入数据。

4.2 处理流(包装流)

处理流是对节点流进行包装的流,它可以增强节点流的功能,如提供缓冲、转换等功能。例如 BufferedInputStreamBufferedOutputStreamBufferedReaderBufferedWriter 等。

分类字节处理流字节输出流字符输入流字符输出流
抽象基类InputStreamOutputStreamReaderWriter
访问文件FileInputStreamFileOutputStreamFileReaderFileWriter
访问数组ByteArrayInputStreamByteArrayOutputStreamCharArrayReaderCharArrayWriter
访问管道PipedInputStreamPipedOutputStreamPipedReaderPipedWriter
访问字符串StringReaderStringWriter
缓冲流BufferedInputStreamBufferedOutputStreamBufferedReaderBufferedWriter
转换流InputStreamReaderOutputStreamWriter
对象流ObjectInputStreamObjectOutputStream
抽象基类FilterInputStreamFilterOutputStreamFilterReaderFilterWriter
打印流PrintStreamPrintWriter
推回输入流PushbackInputStreamPushbackReader
特殊流DataInputStreamDataOutputStream

4.3 节点流和处理流的区别和联系
  1. 节点流是底层流/低级流, 直接和数据源相接
  2. 处理流包装节点流, 既可以消除不同节点流之间的实现差异, 也可以提供更方便的方法来完成输入输出
  3. 处理流对节点流进行包装,使用了修饰器设计模式, 不会直接与数据源相连

示例:使用 BufferedInputStream 和 BufferedOutputStream 复制文件

import java.io.*;public class BufferedStreamExample {public static void main(String[] args) {try (BufferedInputStream bis = new BufferedInputStream(new FileInputStream("input.txt"));BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("output.txt"))) {byte[] buffer = new byte[1024];int bytesRead;while ((bytesRead = bis.read(buffer)) != -1) {bos.write(buffer, 0, bytesRead);}System.out.println("文件复制成功");} catch (IOException e) {e.printStackTrace();}}
}

5. 打印流

5.1 PrintStream 和 PrintWriter

打印流提供了方便的打印方法,如 print()println() 等。PrintStream 是字节打印流,PrintWriter 是字符打印流。

示例:使用 PrintWriter 写入数据到文件

import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;public class PrintWriterExample {public static void main(String[] args) {try (PrintWriter pw = new PrintWriter(new FileWriter("test.txt"))) {pw.println("Hello, PrintWriter!");pw.print("This is a test.");System.out.println("数据写入成功");} catch (IOException e) {e.printStackTrace();}}
}

6. Properties 类

Properties 类是 Hashtable 的子类,用于处理属性文件,属性文件通常以 .properties 为扩展名,文件内容以键值对的形式存储。

示例:读取和写入属性文件

import java.io.*;
import java.util.Properties;public class PropertiesExample {public static void main(String[] args) {Properties properties = new Properties();// 写入属性文件try (FileOutputStream fos = new FileOutputStream("config.properties")) {properties.setProperty("username", "admin");properties.setProperty("password", "123456");properties.store(fos, "Configuration");System.out.println("属性文件写入成功");} catch (IOException e) {e.printStackTrace();}// 读取属性文件try (FileInputStream fis = new FileInputStream("config.properties")) {properties.load(fis);String username = properties.getProperty("username");String password = properties.getProperty("password");System.out.println("Username: " + username);System.out.println("Password: " + password);} catch (IOException e) {e.printStackTrace();}}
}

通过以上内容,你可以对 Java IO 流有一个较为全面的了解,包括文件操作、流的原理和分类、基本流类的使用、节点流和处理流、打印流以及 Properties 类的应用。

http://www.dtcms.com/wzjs/800155.html

相关文章:

  • 广告人网站自己制作游戏的软件
  • 网站报价方案范文淘宝上做网站排名
  • 同学录网站开发的背景防城港装修公司口碑排行
  • 网站网页跳转网站建设过程中准备的工作
  • 小语种外贸网站建设正确的建议是
  • 网站建设安排wordpress添加侧边栏分享按钮
  • 拼团网站建设做特卖的网站有
  • 东莞建设网站平台ie兼容性 网站
  • 网站单页是什么意思微信小商店怎么分销
  • 开一个个人网站多少钱怎么做返利网站
  • 网站被提示危险网站网站开发 网页设计北京师范大学出版社
  • 东莞电商建站零成本游戏网站开发
  • 省级住房城乡建设主管部门网站做一个简单的管理系统
  • 子午谷网站建设国内比较厉害电商设计公司
  • 快速建立网站东莞app软件开发解决方案
  • 购物网站优化方案注册查询官方网站
  • 怎么查网站域名备案中国石化工程建设有限公司怎么样
  • 软件学校网站模板iis 无法启动此网站
  • 佛山百度网站排名优化快手网页版
  • 保定市制作网站公司wordpress注册跳过邮箱验证
  • 怎么查公司网站可信度网站服务器 数据库服务器
  • 增城住房和城乡建设局网站app网站开发哪里有
  • 怎么恢复wordpress设定值嘉兴seo外包服务商
  • 量个网站一个域名免费分销软件
  • 建设银行个人网站官网wordpress子目录伪静态
  • 推图制作网站wap网站快速开发
  • 如何用社交网站开发客户凡客v十商城
  • 福州网站开发哪家比较好石家庄市住房和城乡建设厅网站
  • 网站制作前期所需要准备html 做网站的模板
  • 网站开发 性能方面头条权重查询站长工具