如何在Boost.PropertyTree中解析属性?

时间:2010-09-11 09:18:16

标签: c++ boost boost-propertytree

说我有这种XML格式:

<Widget type="SomeWidget" name="foo">
   <Event name="onmouseover">
      dostuff();
   </Event>
</Widget>

如何使用Boost.PropertyTree读取属性?

2 个答案:

答案 0 :(得分:54)

如果xml有这样的内容:

<mode fullscreen="true">mode xxx</mode>

使用boost :: property code:

get<string>("mode.<xmlattr>.fullscreen") 

哦,是的,这太丑了!

答案 1 :(得分:10)

如果您的问题是获取属性:

  

XML元素的属性是   存储在子项中。那里   是每个属性中的一个子节点   属性节点。存在的    节点不保证或   当没有时必要   属性。

来自文档http://www.boost.org/doc/libs/1_44_0/doc/html/boost_propertytree/parsers.html#boost_propertytree.parsers.xml_parser

所以只需从xmlattr标签中获取它们。