读书人

C++ PugiXML库解析XML 含汉语时无法解

发布时间: 2012-10-11 10:16:10 作者: rapoo

C++ PugiXML库解析XML 含中文时无法解析
XML UTF - 8
用PugiXML 解析时 中文显示乱码

C/C++ code
xml_document xml_doc;xml_parse_result pr = xml_doc.load_file(_T("XML.xml"), parse_full, encoding_utf8);if(!pr){    cout << pr.description() << endl;}xml_doc.print(std::cout);


XML内容为
<?xml version="1.0" encoding="UTF-8"?>

<XmlConfig>
<UI>
<control type = "Button" name="按钮1">
<rect>"100,100|400,200"</rect>
<test>"测试UTF8环境"</test>
</control>
</UI>
</XmlConfig>

如何解析含中文信息的xml?

[解决办法]
两种可能性:

1,你的中文本来就不是utf8编码,你却告诉解析库用utf8解析。 但你说你已经解析成功,但打印乱码,那不是这这种情况。

2,你的终端不认识utf8,所以显示乱码,将终端设置成utf8编码。
[解决办法]
楼上总结的很对
如果你是win32平台,默认情况下,输出utf8的确是不可行的...是这个问题的可能性很大.

读书人网 >C++

热点推荐