java学习笔记——IO流部分

  IO流常用的有:字符流、字节流、缓冲流、序列化、RandomAccessFile类等,以上列出的都是开发中比较常用的。

1、字节流:

  字节流包含:FileInputStream/FileOutputStream、BufferedInputStream/BufferedOutputStream

2、字符流:

  字符流包含:InputStreamReader/OutputStreamWriter、BufferedReader/BufferedWriter、FileReader/FileWriter,其中BufferedReader/BufferedWriter也称作字符流的过滤器,可以一次读一行、写一行,FileReader/FileWriter是从InputStreamReader/OutputStreamWriter继承而来,InputStreamReader/OutputStreamWriter、BufferedReader/BufferedWriter、是继承Reader/Writer而来的。

3、缓冲流(字节流下的缓冲流):

  缓冲流:BufferedInputStream/BufferedOutputStream,也就是说,缓冲流其实是属于字节流的。

4、RandomAccessFile类

  RandomAccessFile类从字面意思来看,就是随机写入写出,也就是说这个类有写入、写出两种方法。

5、对象的序列化、反序列化流(ObjectOutputStream、ObjectInputStream)

  序列化流、反序列化流涉及到序列化接口(Serializable),想要实现对象的序列化和反序列化,该对象必须继承序列化接口(即implement Serializable)

注意:所有的流在完成操作后要执行关闭流的操作(.close()),同时对于输入流要进行刷新(.flush())。