Linux内核使用哪种Unicode编码



我了解到Windows在x86/x64系统上使用UTF-16LE。Linux呢?它使用哪种Unicode编码:UTF-16LE还是UTF-32?

http://www.xsquawkbox.net/xpsdk/mediawiki/Unicode表示

Linux

在Linux上,UTF8是所有字符串的"本机"编码,是fopen()等系统例程所接受的格式。

因此,Linux在这方面与Plan 9类似,Linux和Windows下的boost::filesystem和Unicode注意到

在我看来,Linux下的boost::filesystempath::native()中没有提供宽字符串,尽管boost::filesystem::path已经用宽字符串初始化。

这将排除UTF-16和UTF-32,因为它们的所有变体都需要广泛的字符支持——字符串中允许NUL字节。

Unix通常更喜欢UTF-8。本文建议Linux内核也这样做。

最新更新