060_Unicode字符编码

1. Unicode字符编码

1.1.  Unicode可以被不同的字符集兼容。最常用的编码方式是UTF-8和UTF-16。

1.2. UTF8中的字符可以是1-4个字节长。UTF-8可以表示Unicode标准中的任意字符。UTF-8向后兼容ASCII。UTF-8是网页和电子邮件的首选编码。

1.3. UTF-16: 16比特的Unicode转换格式是一种Unicode可变字符编码, 能够对全部Unicode指令表进行编码。UTF-16主要被用于操作系统和环境中, 比如微软的Windows 2000/XP/2003/Vista/CE以及Java和.NET字节代码环境。

2. Unicode和UTF-8的区别

2.1. Unicode是一个字符集。UTF-8属于编码。

2.2. Unicode是具有唯一十进制数字(代码点)的字符列表。A = 65,B = 66,C = 67,....

2.3. 更简单点理解就是Unicode是数字和字符的一对一的映射。

2.4. 这个十进制数字表示字符串"hello": 104 101 108 108 111。

2.5. 编码指的是如何将这些数字转换成存储在计算机中的二进制数字:

UTF-8编码将像这样存储"hello"(二进制): 01101000 01100101 01101100 01101100 01101111

2.6. 编码将数字转换为二进制。字符集将字符转换为数字。

3. UTF-8编码规则

3.1. 如果一个字节, 最高位(第8位)为0, 表示这是一个ASCII字符(00-7F)。可见, 所有ASCII编码已经是UTF-8了。

3.2. 如果一个字节, 以11开头, 连续的1的个数暗示这个字符的字节数, 例如: 110xxxxx代表它是双字节UTF-8字符的首字节。

3.3. 如果一个字节, 以10开始, 表示它不是首字节, 需要向前查找才能得到当前字符的首字节。

4

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值