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 codeを使用します:

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

そうそう、それは醜いです!

于 2011-10-10T07:58:21.477 に答える
11

問題が属性の取得である場合:

XML要素の属性はサブキーに格納されます。属性ノードの属性ごとに1つの子ノードがあります。属性がない場合、ノードの存在は保証または必要ではありません。

ドキュメントから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 に答える