Java IO流之缓冲流(BufferedInputStream ,BufferedOutputStream)讲解
回顾流的分类
1)按照数据单位的不同流可分为:字节流和字符流
2)按照数据流的流向可分为:输入流和输出流
3) 按流的角色的不同分为:节点流,处理流
抽象基类 节点流(字节流/字符流) 缓冲流 (处理流的一种)
InputStream FileInputStream BufferedInputStream
OutputStream FileOutputStream BufferedOutputStream
Reader FileReader BufferedReader
Writer FileWriter BufferedWriter
了提高数据读写的速度,Java API提供了带缓冲功能的流类,在使用这些流类时,会创建一个内部缓冲区数组。
根据数据操作单位可以把缓冲流分为:
BufferedInputStream 和 BufferedOutputStream
BufferedReader 和 BufferedWriter
缓冲流的使用(处理流之一:缓冲流)
缓冲流要“套接”在相应的节点流(FileInputStream ,FileOutputStream)之上也就是说创建一个缓冲自己输入流 new BufferedInputStream(FileInputStream);。同理输出流也是这样。对读写的数据提供了缓冲的功能,提高了读写的效率,同时增加了一些新的方法
对于输出的缓冲流,写出的数据会先在内存中缓存,使用**flush()**将会使内存中的数据立刻写出.
具体使用步骤
1)提供读入和写出的文件
2)创建相应的节点流(因为缓冲流是建立在节点流之上的)
3)将创建的节点流对象作为形参传递给缓冲流的构造器
4)写具体的操作
5)关闭流 先关闭缓冲输出流,在关闭缓冲输入流 因为缓冲流包含节点流 所以不用关闭节点流 直接关闭缓冲流即可。