获取pugixml中随机参数的值

时间:2018-08-21 09:15:13

标签: c++ pugixml

我对使用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 );

在这种情况下我应该使用吗?在这种情况下应如何使用?只需将参数名称作为参数传递?

1 个答案:

答案 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()");