字符流是jdk1.1后才增加的新功能,专门为了处理字符增加的流。在1.1之前都只有字节流,但是字节流处理字符不是很方便,中间需要调用很多方法,进行编解码。所以一般情况下需要文本操作时用字符流,其他情况用字节流。
所有的输入都是转换成字节流之后,然后在内存中变成字符流。所以一般建议使用字符流。但是遇到中文汉字,出现乱码的情况下,可以使用字节流。
在所有的硬盘上保存文件或进行传输的时候都是以字节的方法进行的,包括图片也是按字节完成,而字符是只有在内存中才会形成的,所以使用字节的操作是最多的。我们建议尽量尝试使用字符流,一旦程序无法成功编译,就不得不使用面向字节的类库,即字节流。