Java IO:字节流与字符流

https://blog.csdn.net/my_truelove/article/details/53758412

字符和字节之间可以互相转化,中间的参照就是编码方式。

相当于给你一个密码本,按照这个规则,你可以把字符翻译成字节,也可以把字节翻译成字符。

下面密码本有这些:

1. ASCII码,一个字符对应一个字节,可以表示完所有的英文字母,由于汉字占2个字节,所以不可以表示中文。

2. 所以后来就有了Unicode码,分两种,一种是UTF-16,一个字符对应2个字节。一种是UTF-8,他可以使用1~4个字节表示一个字符,可变长度,节省空间,节省带宽。

Java中所有数据在硬盘上的读写和传输都是以字节形式进行的,包括文本,图片,视频和音频等。

但是字节人类难以阅读,在编码和展现给我们看时,就需要转化为字符,所以字符是只存在于内存中的。

原文地址:https://www.cnblogs.com/hibou/p/8679343.html