utf-8 null是否与utf-16 / utf-32 null相同?

时间:2010-04-21 18:55:24

标签: unicode null utf

在utf16和utf32中,一个零的字节是否为空?如在utf8或者我们需要2和4个字节的零来相应地在utf16和utf32中创建null吗?

1 个答案:

答案 0 :(得分:10)

在UTF-16中它将是两个字节,在UTF-32中它将是4个字节。

毕竟,否则你无法区分其编码值恰好以零字节开头的字符和代表U + 0000的单个零字节。

基本上UTF-16工作在2字节的块中,UTF-32工作在4字节的块中。 (不可否认,对于BMP之外的字符,你需要两个UTF-16的“块”,但原理仍然是相同的。)如果你要实现一个UTF-16解码器,你会看到两个一次一个字节。