一、概念:IO流是对数据传输抽象的总称,根据数据的特性分为几种类,方便对数据进行针对性的操作。
二、分类:
1、根据数据类型(即数据传输单位)的区别分为:字符流和字节流
字符流和字节流:只要是处理纯文本数据,就优先考虑使用字符流;除此之外都使用字节流(能处理大部分类型的数据)。
2、根据数据流向的区别分为:输入流和输出流
输入流:只能进行读操作
输出流:只能进行写操作
三、有关类:
字节输入输出流:InputStream和OutputStream
字符输入输出流:Reader和Writer
File类:对文件系统中的文件以及文件夹进行封装,保存文件或目录的各种信息
随机存取文件流:RandomAccessFile(构造方法有四种方式读写,常用r,rw)
该类是特殊流,内部封装了字节流和字符数组缓冲区,通过指针操控字符数组的顺序。该对象在实例化时,如果要操作的文件不存在,会自动创建;如果文件存在,写入数据未指定位置时,会从头开始写,即覆盖原有的内容。可以用于多线程下载或多个线程同时写数据到文件。
四、流的基本操作过程:
1、 确定数据源和目标源
2、 判断是否是纯文本数据
3、 是否需要附加功能,例如缓冲区