UTF-16

UTF-16

  • 描述
    • 使用变长字节表示
  • 编码规则
    • 编号在 U+0000 ~ U+FFFF 的字符 (常用字符集)
      • 直接用 2 个字节表示
      • U+D800 ~ U+DBFF 编号未定义
    • 编号在 U+10000 ~ U+10FFFF 的字符 (增补字符集)
      • 用 4 个字节表示
      • 前两个字节:高代理项 (U+D800 ~ U+DBFF)
      • 后两个字节:低代理项 (U+DC00 ~ U+DFFF)
      • 数字编号和二进制表示之间有转换算法 (不展开介绍)
  • 判断字节数
    • 看前两个字节的编号范围:U+D800 ~ U+DBFF 开头:4 字节,否则:2 字节
  • 字节序问题
    • 类似 UTF-32,存在大端 (UTF-16BE) 和 小端 (UTF-16LE)
  • 应用
    • 常用于系统内部编码
  • 优点
    • 比 UTF-32 节省空间
  • 缺点
    • 任何字符至少需要 2 字节,对于西欧国家仍浪费空间

文章作者: huan
版权声明: 本博客所有文章除特別声明外,均采用 CC BY-NC-ND 4.0 许可协议。转载请注明来源 huan !
  目录