是否可以将libxml与unicode xmlchar一起使用?

时间:2009-01-02 00:54:59

标签: c++ unicode libxml2

是否可以将libxml与unicode一起使用?

例如,xmlParseDoc函数采用xmlChar

xmlChar具有以下定义:

typedef unsigned char xmlChar;

我希望libxml将所有字符解释为2字节字符。

我觉得以下内容无法正常使用lib:

typedef unsigned short xmlChar;

注意:我不是在谈论实际读取/写入xml编码的时间。我知道支持unicode。我想要的是进入lib的接口是unicode字符串wstring而不是普通的字符串。

1 个答案:

答案 0 :(得分:4)

我在@Mitch Wheat提供的link中找到答案

您不能将xmlchar重新定义为unsigned short。但是,如果将字符串编码为UTF-8,则xmlChar将正确处理unicode。

您可以通过使用参数CP_UTF8调用WideCharToMultiByte将Windows中的字符串转换为UTF8