首页 新闻 搜索 专区 学院

C++有没有支持UNICODE的XML解析库

0
悬赏园豆:10 [已解决问题] 解决于 2012-09-22 23:40

用TinyXML2不知道为什么总是只读一部份文件出来,没读完整。

用MSXML,这是基于COM的,微软关于COM的文档太少了,研究了很长时间还不知道如何将XML里的NODE属性读取出来。将Node转为Element类型后,又出现无效指针的问题,换回Node又正常,但又不能读取Attribute,纠结死我了。

BOOST的文档也少的可怜。

还有没有其它的XML解析库能支持UNICODE的?

zimmerk的主页 zimmerk | 初学一级 | 园豆:74
提问于:2012-09-21 07:24
< >
分享
最佳答案
0

UNICODE主要是针对文件的编码方式来说的,TinyXML2应该会支持,可能需要设置项目为UNICODE,或者由你按照UNICODE读取文件到流中或转换成字符串后再传递给TinyXML2。

如果不用TinyXML2,用COM也不是很麻烦,你可以使用ATL中的CXMLDocument来解析XML,相当好用。

收获园豆:10
Launcher | 高人七级 |园豆:45045 | 2012-09-21 09:22

我的工程是UNICODE的,XML文件是UTF-8的。用TinyXML2读取XML文件的时候不能将文件完整读出,只读出了开头的一小部分,不知道是怎么回事?

zimmerk | 园豆:74 (初学一级) | 2012-09-22 00:35

终于可以了,用的是MSXML。原来MSXML没问题,那晚出现的问题不知道是怎么回事。

微软的库确实好用,可惜COM的文档实现是太复杂了。

zimmerk | 园豆:74 (初学一级) | 2012-09-22 23:40
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册