Unicode字符需要几个字节来存储?

0)学习笔记:

我们常说的这句话“Unicode字符是2个字节”这句话有毛病

Unicode目前规划的总空间有17个平面, 0x0000---0x10FFFF,每个平面有 65536 个码点.

 

Unicode支持的字符上限是65536个 这句话也是有问题的,这65536个字符是我们最常用的基本字符,但是还有很多字符是在0x0000--0xFFFF之外的

unicode存储在计算机内存里肯定是需要编码的,那么就有UTF-8,UTF-16,UTF-32等编码方案。

 

每种编码方式有自己的特点,不同范围内的字符用不同的编码方式存储所需的字节数是不一样的。

 

1)

UTF-8具体的表现形式为:

  • 0xxxxxxx:单字节编码形式,这和 ASCII 编码完全一样,因此 UTF-8 是兼容 ASCII 的;
  • 110xxxxx 10xxxxxx:双字节编码形式;
  • 1110xxxx 10xxxxxx 10xxxxxx:三字节编码形式;
  • 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx:四字节编码形式。

 

2)

下面两种编码方式还没研究

UTF-16

UTF-32

 

posted @ 2019-03-27 15:54  筱筱的春天  阅读(4977)  评论(1编辑  收藏  举报