【发布时间】:2011-09-19 18:03:49
【问题描述】:
所以我对此的理解是 Unicode 字符有两个字节长,所以第一个字节应该是 ASCII 令牌,第二个字节应该是另一个 ASCII 令牌。我有一个 Unicode 字符数组,我想将其转换为一个 ASCII 字符数组,最终长度是原始字符的两倍。
【问题讨论】:
-
@Alan,这根本不是它的工作原理。请参阅this same question 以了解速成课程的问题形式。 :)
-
您想将每个字符分成 2 个字节吗?还是要将字符串重新编码为 UTF-8?还是你想要别的?
-
(1) Unicode 字符最长可达 4 个字节(在 UTF-8 和 UTF-16 中)。
-
(2) ASCII 字符必须将高位设置为 0。Unicode 字符可以将每个字节的高位设置为 1。
-
@user319931:在 (2) 中,ASCII 字符 是 也是 Unicode 字符。反之亦然。在 (1) 中,我认为您对 Unicode 和 编码 感到非常困惑。 Unicode 代码点只是整数值,目前可以达到 0x10FFFF。