10.1.2 字节流和字符流
按读写数据的最小单位分类,可分为字节流和字符流。
字节流:读写数据的最小单位是字节,所有字节流类都派生于InputStream和OutputStream两个抽象类,这两个抽象类的具体子类FileInputStream和FileOutputStream以字节为单位读写磁盘文件。字节流类在命名上的特征是基本都以Stream结尾。
字符流:读写数据的最小单位是字符,所有字符流类都派生于Reader和Writer两个抽象类,这两个抽象类的具体子类FileReader和FileWriter以字符为单位读写磁盘文件。字符流类在命名上的特征是基本都以Reader(输入流)或Writer(输出流)结尾。(https://www.daowen.com)
表10.1 I/O流四个抽象父类

将输入/输出、字节/字符流的四个抽象父类列入表中,有助于我们在实际编程中针对具体要求确定使用哪个类的具体子类,如表10.1所示。如:读文本文件,就需要Reader(字符输入流)的具体子类(如FileReader等)来实现;写字节数据,就需要OutputStream(字节输出流)的具体子类(如FileOutputStream等)来实现。