起因:计算机只能处理数字,如果要处理文本,就要把文本转换成数字。一个字节(byte)是8(bit),要处理中文的话至少需要两个字节,并且要避免与ASC11编码表冲突,因此出现了GB2312编码专门为中文编码。多国有各自的编码,那么在多语言的混合文本里会显示乱码,于是Unicode标准便出现了。
ASCII与Unicode区别:ASCII编码是1个字节,而Unicode编码通常是2个字节。如果把ASCII编码的A
用Unicode编码,只需要在前面补0就可以。
UTF-8(可变长编码)的出现:如果很少涉及中文等多字节,那么使用unicode将会非常浪费存储空间。只支持ASCII编码的一般可以在UTF-8下继续正常使用。
在计算机内存中,统一使用Unicode编码,当需要保存到硬盘或者需要传输的时候,就转换为UTF-8编码。