Java IO:字节流与字符流
https://blog.csdn.net/my_truelove/article/details/53758412
字符和字节之间可以互相转化,中间的参照就是编码方式。
相当于给你一个密码本,按照这个规则,你可以把字符翻译成字节,也可以把字节翻译成字符。
下面密码本有这些:
1. ASCII码,一个字符对应一个字节,可以表示完所有的英文字母,由于汉字占2个字节,所以不可以表示中文。
2. 所以后来就有了Unicode码,分两种,一种是UTF-16,一个字符对应2个字节。一种是UTF-8,他可以使用1~4个字节表示一个字符,可变长度,节省空间,节省带宽。
Java中所有数据在硬盘上的读写和传输都是以字节形式进行的,包括文本,图片,视频和音频等。
但是字节人类难以阅读,在编码和展现给我们看时,就需要转化为字符,所以字符是只存在于内存中的。