字符串编码了解

3 阅读1分钟

计算机只能处理数字0和1,如果处理文本就要把文本转为数字,8个bit比特为1个byte字节,1个字节最多表示255个字符(二进制11111111=十进制255)

ASCII编码

对大小写英文字母、数字和一些符号共127位进行了编码,这个编码表被称为ASCII编码

UNICODE

ascii不够,unicode通常用两个字节表示一个字符(如果要用到非常偏僻的字符,就需要4个字节)

UTF8

如果本来能用1个字节表示的却用两个字节,造成了浪费,utf8动态的编码成1-6个字节,如字母1个,中文一般3个。utf8兼容ascii

举例

在内存中用unicode,当传输或存储在硬盘上时用utf8。比如用记事本编辑的时候文本读取出来转成unicode存在内存,保存时再转成utf8存储