一、数据流的概念
1、数据源和数据宿统称为数据源,但是从仔细的方面讲数据源是是指那些能够提供数据的地方,包括键盘、磁盘文件、网络接口等。而数据宿则是接收数据的地方。
正因为数据源的多样性,才有了数据流。
二、根据数据方向的不同可分为以下几类:
1、根据数据流动的方向,可分为输入流(Input Stream)和输出流。输入流只能从中读取数据,而不能向其写出数据;输出流则只能向其写出数据,而不能从中读取数据。
2、根据数据流所关联的是数据源还是其他数据流,可分为节点流(Node Stream)和处理流(Processing Stream)。节点流可以从/向一个特定的地方读/写数据。处理流是对一个已存在的流的连接和封装,通过所封装的流的功能调用实现增强的数据读/写功能,处理流并不直接连接到数据源。
3、根据传输数据的“颗粒大小”划分,可分为字符流(Character Stream)和字节流(Byte Stream)。
三、字符流和字节流的不同
1、节点流
实例化: FileReader fr=new FileReader("dome.txt")
2、处理流
实例化:BufferedReader bf=new BufferedReader(new FileReader("dome.txt"))
3、字节流一次或多次传送对个字节 可处理所有类型的数据
4、字符流一次或多次传送对个字流 只能处理字符数据
5、所有字节流都是以 InputStream OutputStream 结尾的
6、所有字符流都是以 Reader Writer 结尾的