如何使用xpath或query从xml中提取数据

时间:2015-05-20 08:59:52

标签: c# .net xml xpath xquery

我的xml文件看起来像

<info>

  <Data Name="ProcessName">-</Data> 
  <Data Name="IpAddress">10.1.2.118</Data> 
  <Data Name="IpPort">50118</Data> 
  <Data Name="ProcessName">-</Data> 
  <Data Name="IpAddress">10.1.2.119</Data> 
  <Data Name="IpPort">50118</Data> 
  <Data Name="ProcessName">-</Data> 
  <Data Name="IpAddress">10.1.2.120</Data> 
  <Data Name="IpPort">50118</Data> 
  <Data Name="ProcessName">-</Data> 
  <Data Name="IpAddress">10.1.2.157</Data> 
  <Data Name="IpPort">50118</Data> 


</info>

我需要使用 名称 属性值= “Ipaddress”提取数据节点,并且节点值= 10.1.2.157 ,我如何使用任何xml查询技术

1 个答案:

答案 0 :(得分:1)

如果该XML是您的整个文档,那么以下XPath应该选择您需要的Data元素:

./info/Data[@Name='IpAddress'][.='10.1.2.157']

./info/Data将匹配名为info的{​​{1}}子节点,Data包含两个谓词 - 一个与[@Name='IpAddress'][.='10.1.2.157']属性相匹配值为“IpAddress”,另一个值与您指定的元素内容相匹配。