字符编码介绍

一个规则,这个规则可以将字符映射到唯一一种状态(二进制字符串),这就是编码.

  • 编码(encode) 解码(decode)

encode 是数据转换成另一种形式的过程,类似 某个字符转化成一串二进制数据。 decode就是逆向这一过程。

  • 字符集

字符集是规定某个字符对应某种二进制数据的转换关系。

  • 字库表

字库表是一个相当于所有可读或者可显示字符的数据库,字库表决定了整个字符集能够展现表示的所有字符的范围。编码字符集,即用一个编码值 code point来表示一个字符在字库中的位置。字符编码,将编码字符集和实际存储数值之间的转换关系。

  • UTF-8和Unicode的关系

Unicode就是上面提到的编码字符集,而UTF-8就是字符编码,即Unicode规则字库的一种实现形式。随着互联网的发展,对同一字库集的要求越来越迫切,Unicode标准也就自然而然的出现。它几乎涵盖了各个国家语言可能出现的符号和文字,并将为他们编号。
Unicode的编号从0000开始一直到10FFFF共分为16个Plane,每个Plane中有65536个字符。而UTF-8则只实现了第一个Plane,可见UTF-8虽然是一个当今接受度最广的字符集编码,但是它并没有涵盖整个Unicode的字库,

  • 乱码

解码错误。

Objective-C 与 iOS 编程规范 iOS有时候会用到的小技巧

Comments

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×