【发布时间】:2011-02-10 18:13:51
【问题描述】:
在 utf16 和 utf32 中,一个字节的零是否意味着 null?就像在 utf8 中一样,还是我们需要 2 和 4 个字节的零来相应地在 utf16 和 utf32 中创建 null?
【问题讨论】:
在 utf16 和 utf32 中,一个字节的零是否意味着 null?就像在 utf8 中一样,还是我们需要 2 和 4 个字节的零来相应地在 utf16 和 utf32 中创建 null?
【问题讨论】:
在 UTF-16 中为 2 个字节,在 UTF-32 中为 4 个字节。
毕竟,否则您无法区分编码值恰好以零字节开头的字符和表示 U+0000 的单个零字节。
基本上 UTF-16 以 2 个字节的块工作,而 UTF-32 以 4 个字节的块工作。 (诚然,对于 BMP 之外的 字符,您需要两个“块”的 UTF-16,但原理仍然相同。)如果您要实现 UTF-16 解码器,您将阅读两个一个字节。
【讨论】: