我对使用pugixml从xml文件中提取参数值有疑问。我有一个具有分层结构的XML文件,并且想检索与特定参数关联的值。
部分文件如下:
<Path>
<HardParameters>
</HardParameters>
<AdjustableParameters>
<Parameter name="Path Bandwidth" units="rad/s">
<symbol>wC</symbol>
<description>Closed loop BW</description>
<value>3.9</value>
<reference>IEEE</reference>
</Parameter>
<Parameter name="Foo" units="">
<symbol>zeta</symbol>
<description>Foo ratio </description>
<value>4.1</value>
<reference>IEEE</reference>
</Parameter>
</AdjustableParameters>
</Path>
例如,我想检索Foo比率的值4.1。 我想知道功能
xpath_variable* get( const char_t* name );
在这种情况下我应该使用吗?在这种情况下应如何使用?只需将参数名称作为参数传递?
答案 0 :(得分:1)
是的,您可以使用//Parameter[@name = 'Foo']/value/text()
的XPath来获取带有属性value
且值为name
的参数内的Foo
元素的文本:
xml_node root
xpath_node value = root.select_node("//Parameter[@name = 'Foo']/value/text()");