zoukankan      html  css  js  c++  java
  • 代码点与代码单元

    代码点可理解为字符。一个代码点就是一个字符

    代码单元:不同编码,代码单元长度不一样。

    • UTF-8 中的代码单元由 8 位组成。
    • UTF-16 中的代码单元由 16 位组成。
    • UTF-32 中的代码单元由 32 位组成。
    • GB18030 中的代码单元由 8 位组成。

    • UTF-8

      在 UTF-8 中,因为代码单元较小的缘故,每个代码点常常被映射到多个代码单元。代码点将被映射到一个、两个、三个或四个代码单元。

    • UTF-16

      UTF-16 的代码单元大小是 8 位代码单元的两倍。所以,标量值小于 U+10000 的代码点被编码到单个代码单元中。

      对于标量值大于或等于 U+10000 的代码点,每个代码点需要两个代码单元。在 UTF-16 中,这些代码单元对有一个独特的术语:“Unicode 代理对”。


    • Note注意

      下面对 Unicode 代理对的支持进行了讨论。

    • UTF-32

      UTF-32 中使用的 32 位代码单元足够大,每个代码点都可编码为单个代码单元。

    • GB18030

      在 GB18030 中,因为代码单元较小的缘故,每个代码点常常被映射到多个代码单元。代码点将被映射到一个、两个或四个代码单元。

    java 采用utf-16编码,因此,通常一个代码点是一个代码单元,但有些辅助字符是2个代码单元。


    在.NET里面,通常是用字节来衡量字符长度,但java是用代码单元。

  • 相关阅读:
    Java 连oracle 12C 起步
    powershell excel 导入 sqlserver
    移动端适配方案(上)
    ie7兼容问题
    node学习第三天(2)
    node学习第三天(1)
    HTMl5的sessionStorage和localStorage的一些区别
    html5+css3实战之-幽灵按钮
    node.js理论知识梳理
    node.js学习第二天
  • 原文地址:https://www.cnblogs.com/leftfist/p/4257892.html
Copyright © 2011-2022 走看看