IO流技术

2020-06-15 17:45:28 浏览数 (1)

今晚加班,所以今晚文章更新晚了点。

我们平时在用流的时候是不是有的时候很纠结,不知道要用哪一个,流对象那么多。

整理一下,来看看流操作的基本规律。

通过三个明确来完成

1,明确源和目的:

源: 输入流 >>>>> InputStream Reader

目的:输入流 >>>>> OutputStream Writer

2,操作的数据是否是纯文本:

是:字符流

否:字节流

3,当体系明确后,再明确要使用哪个具体的对象

通过设备来进行区分:

源设备:内存,硬盘,键盘

目的设备:内存,硬盘,控制台

来个例子看看

将一个文本文件中的数据存储到另一个文件中,复制文件。

源:读取,InputStream Reader

是不是操作文本文件

是:Reader

这样体系就明确了。

接下来要明确使用该体系中的哪个对象。

明确设备:硬盘上的一个文件

Reader体系中可以操作文件的对象是:Reader

是否需要提高效率:是

加入Reader体系中缓冲区,BufferedReader

目的:OutputStream Writer

是否是纯文本

是,Writer

设备:硬盘上的一个文件

Writer体系中可以操作文件的对象FileWriter

是否需要提高效率:是

加入Writer体系中缓冲区,BufferedWriter

如果不是文本文件也同样的道理.

补充一个知识点

一般我们在存数据的时候可能会乱码,原因就是编码的问题。所以可以通过转换流来解决这个问题。

InputStreamReader OutputStreamWriter

注:

UTF-8:一个字符3个字节

GBK:一个字符2个字节

0 人点赞