我试图找到单独使用
Windows API将UTF-32文本转换为任何代码页的方法.我不能用CLR来完成这个任务.
Microsoft在http://msdn.microsoft.com/en-us/library/dd317756(VS.85).aspx的代码页标识符页面将UTF-32列为仅供托管应用程序使用.
使用UTF-32时,ConvertStringTo / FromUnicode失败.
最佳答案 通过对Unicode的一些了解,您应该能够在不使用任何API的情况下创建UTF32到UTF16转换器.
U 0000到U FFFF范围内的所有字符都可以删除高16位.
U 10000到U 10FFFF范围内的值可以转换为两个16位字,称为代理项对:
http://en.wikipedia.org/wiki/UTF-16#Encoding_of_characters_outside_the_BMP