字节流与字符流的区别

输入输出字节流使用Inputstream、OutputStream来完成的,而输入输出字符流是用Reader和Writer完成的的;

字符流处理的是2个字节的Unicode,分别操作字符、字符数组、字符串;字节流处理单元为1个字节,操作字节和字节数组;

字节流在操作的时候本身是不会用到缓冲区(内存)的,是与文件本身直接操作的,而字符流在操作的时候是使用缓冲区的,所以字节流在操作文件的时候,即使不关闭资源,文件也可以输出,但是如果字符流不使用close方法关闭资源的话,不会输出任何内容,说明字符使用的是缓冲区,并且可以使用flush方法强制进行刷新缓冲区,这时才能在不close的情况下输出内容。

原文地址:https://www.cnblogs.com/xulibing/p/6065287.html