基础知识
-
位(bit):二进制数中的一个数位,可以是0或者1,是计算机中最小的数据单位。
-
字节(Byte,B):计算机中数据的基本单位,每8位组成一个字节。各种信息在计算机中存储、处理至少需要一个字节。例如,一个ASCII码用一个字节表示,一个汉字用两个字节表示。
-
字符(char):不同编码情况下占用的字节数不一样。java中字符是采用Unicode标准;
unicode编码:一个英文字母或一个中文汉字为两个字节;
utf-8编码:一个中文字符是3个字节。
字节流与字符流的区别:
- 处理数据的单位不同,字节流处理的数据单远是一个字节,字符流处理的数据单位是占 2个字节的Unicode字符;
- 处理文件的种类不同,字节流可以处理任意类型的文件,视频、pdf、图片等,字符流只适用处理纯文本;
- 字节流的基类 是 OutputStream、InputStream;字符流的基类 是Reader、Writer ;
- 字节流本身没有缓冲区,是直接操作文件的;字符流本身自带缓冲区;
待补充 2022.09.16 00:31