我正在使用libxml2。所有功能都与xmlChar *一起使用。我发现xmlChar是一个unsigned char。
所以我对如何使用它有一些疑问。
1)例如,如果我使用utf-16或utf-32文件,libxml2如何处理它并在函数中返回xmlChar?我会失去一些角色吗?
2)如果我想用这个字符串做一些事情,我应该把它转换为char *或wchar_t *以及如何?
我会丢失一些角色吗?
答案 0 :(得分:1)
xmlChar
仅用于处理UTF-8
编码 。
所以,回答你的问题:
不,如果使用UTF-16
或UTF-32
,您不会丢失任何字符。只需使用iconv或任何其他库对UTF-16
或UTF-32
数据进行编码,然后再将其传递给API。
不要只是“施放”字符串。如果需要,可以在其他编码中转换它们。