一、使用 FileReader 对文件进行读取
- 实例化一个文件对象
 - 使用该文件对象初始化一个 
FileReader对象 - 通过 
FileReader的 read 方法来读取数据 - 最后文件流一定要进行关闭
虽然GC有自带的垃圾回收算法机制,但是对物理连接(数据库,socket连接,文件流连接)是无能为力的。 - 读入的文件是一定要存在的,不然会在实例化 FileReader 的时候会报异常
public class FileReaderWriterTest {@Testpublic void FileReaderTest() {File file = new File("hello.txt");FileReader fileReader = null;char[] buffer = new char[1024];int len;try{fileReader = new FileReader(file);while((len = fileReader.read(buffer)) != -1){for(int i = 0;i < len;i++){System.out.print(buffer[i]);}}}catch (IOException e){e.printStackTrace();}finally {if(fileReader != null){try {fileReader.close();} catch (IOException e) {e.printStackTrace();}}}}}
两种 read 方式
read()是返回读入到的一个字符。如果读取到了文件末尾,那么返回 -1 
通过一个个字符读取
@Testpublic void FileReaderTest2(){File file = new File("hello.txt");FileReader fileReader = null;int data;try{FileReader reader = new FileReader(file);while((data = reader.read()) != -1){System.out.print((char)data);}}catch (IOException e){e.printStackTrace();}finally {if(fileReader != null){try {fileReader.close();} catch (IOException e) {e.printStackTrace();}}}}
直接读取到字符数组中
public class FileReaderWriterTest {@Testpublic void FileReaderTest() {File file = new File("hello.txt");FileReader fileReader = null;char[] buffer = new char[1024];int len;try{fileReader = new FileReader(file);while((len = fileReader.read(buffer)) != -1){for(int i = 0;i < len;i++){System.out.print(buffer[i]);}}}catch (IOException e){e.printStackTrace();}finally {if(fileReader != null){try {fileReader.close();} catch (IOException e) {e.printStackTrace();}}}}}
二、使用FileWriter对文件进行写操作
说明:
- 输出操作,对应的 file 是可以不存在的。
- 如果不存在,那么输出的过程中,会自动创建该文件。
 - 如果存在
- 如果流使用的构造器是:
FileWriter(file,false) 或 FileWriter(file);那么就是对原有的文件进行覆盖。 - 如果使用的构造器是:
FileWriter(file,true)那么就是在原有的文件末尾进行追加数据。 ```java package test17; 
 - 如果流使用的构造器是:
 
 
import org.junit.Test;
import java.io.*;
/**
- Created By Intellij IDEA *
 - @author Xinrui Yu
 - @date 2021/12/5 14:04 星期日
*/
public class FileReaderWriterTest {
 @Test
 public void FileReaderTest() {
} }File file = new File("hello.txt");File outFile = new File("output.txt");String str = "计算机科学与技术";FileReader fileReader = null;FileWriter fileWriter = null;char[] buffer = new char[1024];int len;try{fileReader = new FileReader(file);while((len = fileReader.read(buffer)) != -1){for(int i = 0;i < len;i++){System.out.print(buffer[i]);}}}catch (IOException e){e.printStackTrace();}finally {if(fileReader != null){try {fileReader.close();} catch (IOException e) {e.printStackTrace();}}}try{fileWriter = new FileWriter(outFile);fileWriter.write(str);}catch (IOException e){e.printStackTrace();}finally {if(fileWriter != null){try {fileWriter.close();} catch (IOException e) {e.printStackTrace();}}}
 
```
