22

假设我有这种 XML 格式:

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

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

4

2 回答 2

60

如果 xml 有这样的内容:

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

使用 boost::property 代码:

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

哦对了,好丑!

于 2011-10-10T07:58:21.477 回答
11

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

XML 元素的属性存储在 subkey 中。属性节点中的每个属性都有一个子节点。当没有属性时,不保证或不需要节点的存在。

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

因此,只需从<xmlattr>路径中的键中获取它们即可。

于 2010-09-11T13:55:30.720 回答