ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
[TOC] ## IO 输入输出流 ``` 字节(1 byte = 8 bit) 字符(2 byte = 16 bit) ``` >### 字符流 *(主要读取文本相关内容。`txt,doxc`)* **FileReader(字符输入流)** - 方法 ``` read() 一次读一个数据,当read返回值为-1表示没有数据。(int类型) read(字符数组, 偏移量, 读取字符长度) ``` **FileWriter (字符输入流)** - 对象实例化 ``` FileWriter fw = new FileWriter(File||文件地址) FileWriter fw = new FileWriter(File||文件地址,true) //true防止刷新覆盖 ``` - 方法 ``` write(String str) 向文中写字符串 flush() 刷新,将内存中的数据写入到文件,这种方式会覆盖原有内容。 close()关闭流。close 在关闭时先刷新,再关闭。 ``` ***** >### 字节流 *(什么都能读)* **FileInputStream (字节输入流)** **FileOutputStream (字节输出流)** ``` public void FileOutputStreamTest(InputStream inputStream){ FileOutputStream fos = null; File file = new File("targerSrc"); if(file.exists()){ fos = new FileOutputStream(file) byte buffer = new byte[1024]; while((byteSize = inputstream.read(buffer)) != -1){ fos.write(buffer,0,byteSize) } fos.close(); } } ``` ***** >### 缓冲流 1. **缓冲字符流** ``` BufferedReader 缓冲字符输入流 BufferedWriter 缓冲字符输出流 ``` 2. **缓冲字节流** ``` BufferedInputStream 缓冲字节输入流 BufferedOutputStream 缓冲字节输出流 ``` ***BufferedReader 缓冲字符输入流*** - 方法 ``` readLine()一次读一行数据 ``` * [ ] 关闭流原则,先打开后关闭 *****