从xml路径读取实际值

时间:2014-03-16 08:44:35

标签: xpath

我有以下xml结构:

<?xml version="1.0" encoding="UTF-8"? >  
<sql>  
  <Assoc name="sql">  
    <RecArray name="contents">  
      <Record name="contents">  
        <String name="PackType" > < value actual="P" />< /String >  
        <String name="SerialNumber" > < value actual="0002" />< /String >  
        <String name="VersionNumber" > < value actual="02" /></ String >  
      </Record>  
    </RecArray>  
  </Assoc>  
</sql>  

如何获取每个String节点的值,就像我需要知道“SerialNumber”节点内的值一样 的问候,

2 个答案:

答案 0 :(得分:0)

如果您希望获取每个<value>元素中的所有<String>元素,可以尝试此XPath查询:

/sql/Assoc/RecArray/Record/String/value

精确的路径将是更好的性能。如果您正在寻找更简单的查询,这也将起作用:

//String/value

或者如果你的意思是每个String节点的值actual属性的值,你可以这样做:

/sql/Assoc/RecArray/Record/String/value/@actual

最后,如果以上都不符合您的要求,请更新问题并提供样本XML发布的预期输出。

答案 1 :(得分:-1)

我想出来了 因为它是多字符串元素(在问题中很清楚),我应该使用以下

/sql/Assoc/RecArray/Record/String[2]/value/@actual