![2e3bc18f800f240159d1aeaf6e3f936b.png](https://i-blog.csdnimg.cn/blog_migrate/ff0fb1f07f8960039a8b54dce2cc5bf8.jpeg)
一、思维导图
![64180046c4f872c6c9d5d2ce572e1b25.png](https://i-blog.csdnimg.cn/blog_migrate/3564431c73542f5de1b50256dfc34fe5.jpeg)
二、相关代码
2.1 FileReader读入数据的基本操作
第一步:实例化File类的对象,指明要操作的文件。
第二步:提供具体的流(因为是操作文本,所以选择字符流,又因为是直接操作文本所以是节点流)。
第三步:读取数据 read():返回读入的一个字符。
public
类似于外卖员从店家取一份外卖然后送一份,效率较低!那么如何改进呢?
2.2 FileReader中使用read(char[] cbuf)
public
类似于外卖员每次用外卖箱从商家处装满再进行派送,但是需要注意的是,最后一次从商家取饭可能遗留上一次的饭。
2.3 FileWriter写出数据的操作
public
注意:
① 输出操作,对应的File文件可以不存在,会自动创建此文件。
② FileWriter fw = new FileWriter(file,true); // 表示追加,false表示覆盖
2.4 使用FileReader和FileWriter实现文本文件的复制
/*
注意:字符流无法处理二进制字节文件,如图片,反之,fileInputStream也无法处理字符文件(会出现乱码)。
2.5 实现对图片的复制操作
public