1、简要介绍字节流和字符流
Java中的字节流是以字节(byte)为基本单位进行处理,用于对二进制数据进行读写操作,对应抽象类InputStream和OutputStream。字节流可以处理任何类型的对象,但不能直接处理Unicode字符。
Java中的字符流是以16位的Unicode码表示的字符为基本单位进行处理,对应抽象类Reader和Writer。字符流只能处理字符或字符串。
2、那为什么要使用字节流和字符流两种流呢?难道统一之后不是更方便?
所有文件的存储都是以字节为单位,对于英文,完全可以使用字节进行操作,但对于中文、韩文等,必须使用16位的Unicode字符才能完全表示,因此,在进行对中英文的操作时,必须有字节流和字符流之间的转换。
InputStream,OutputStream,Reader,writer都是抽象类。所以不能直接new