我正在开发使用MultiByteToWideChar()和WideCharToMultiByte()函数将UTF-8转换为UTF-16的应用程序,反之亦然。我的工作目的是将该应用程序从Windows移植到Linux。由于这些函数在整个代码中被广泛使用,因此我希望最小化代码更改。 不幸的是我有一个限制 - 不能使用像Wine这样的开源库,所以我基本上寻找一个很好的算法,用于将多字节UTF-8字符串转换为UTF-16宽字符串(反之亦然),它将在32上工作64位Linux,仅使用标准Linux C库。
有人可以向我推荐我可以使用的适当算法或标准实现。
答案 0 :(得分:-2)
UTF-8和UTF-16是非常简单的编码,易于手工实现,如果只是你担心的两种编码,你甚至不需要使用任何库。