我需要使用Boost属性树编写XML Parser,它可以替换现有的MSXML DOM Parser。基本上我的代码应该返回子节点列表,子节点数等。这可以使用属性树来实现吗?例如。 GetfirstChild(),的selectNodes(),GETLENGTH()等等。
我看到很多与Boost Property Tree相关的API,但文档似乎是最小的并且令人困惑。截至目前,我能够使用BOOST_FOREACH解析整个XML。但是每个节点的路径都是硬编码的,不符合我的目的。
答案 0 :(得分:1)
boost :: property_tree可用于解析XML及其树,因此您可以将其用作XML DOM替换,但该库并非旨在成为完全成熟的XML解析器,并且它不会引起XML的抱怨标准。例如,它可以成功解析非格式良好的xml输入,但它不支持某些XML功能。所以这是你的选择 - 如果你想要简单的XML配置接口那么是的,你应该使用boost :: property_tree