【发布时间】:2011-05-05 01:13:47
【问题描述】:
获取 std::string 类型的 XML 字符串并将其转换为内存中 XML 对象的最有效方法是什么,对象结构并不重要,我所追求的是我是否愿意需要逐个字符地遍历字符串并挑选出所有部分,或者是否有更简单的方法?
【问题讨论】:
标签: c++ xml string xml-parsing
获取 std::string 类型的 XML 字符串并将其转换为内存中 XML 对象的最有效方法是什么,对象结构并不重要,我所追求的是我是否愿意需要逐个字符地遍历字符串并挑选出所有部分,或者是否有更简单的方法?
【问题讨论】:
标签: c++ xml string xml-parsing
最简单的方法可能是使用库来做到这一点。
如果您想自己执行此操作,则需要解析包含 XML 代码的字符串。有很多方法可以做到这一点;最简单的可能是递归下降解析器。
【讨论】:
看看阿拉比卡:http://www.jezuk.co.uk/cgi-bin/view/arabica 在我知道的所有 XML 库/包装器中,它对标准最友好。
【讨论】:
试用 Expat,紧凑、用户友好且免费: http://expat.sourceforge.net/
【讨论】:
使用libxml2。不是一个高度复杂的库并且易于使用。可移植,用 C 语言编写,但可以绑定到其他语言,并且有大量示例可供使用和学习。
【讨论】: