Linux上的MultiByteToWideChar / WideCharToMultiByte实现用于UTF转换

时间:2012-10-09 16:48:22

标签: utf-8 utf-16 multibyte widechar

我正在开发使用MultiByteToWideChar()和WideCharToMultiByte()函数将UTF-8转换为UTF-16的应用程序,反之亦然。我的工作目的是将该应用程序从Windows移植到Linux。由于这些函数在整个代码中被广泛使用,因此我希望最小化代码更改。 不幸的是我有一个限制 - 不能使用像Wine这样的开源库,所以我基本上寻找一个很好的算法,用于将多字节UTF-8字符串转换为UTF-16宽字符串(反之亦然),它将在32上工作64位Linux,仅使用标准Linux C库。

有人可以向我推荐我可以使用的适当算法或标准实现。

1 个答案:

答案 0 :(得分:-2)

UTF-8和UTF-16是非常简单的编码,易于手工实现,如果只是你担心的两种编码,你甚至不需要使用任何库。