XmlDocment-如何通过使用XPath进行过滤来获取节点

|| 如果您有一个XML文档,并且需要根据某些属性值(数量为4)找到某些节点,那么这是正确的方法(就性能而言): a)过滤XML文档(带有“ 0”)以获取与任何属性值匹配的节点列表,然后使用If-else遍历过滤后的节点列表以获取具有特定属性值的节点。 b)分别为每个属性值过滤XML文档(带有
XPath
)。
<Nodes>
  <a class=\"myclass\" type=\"type1\">some text</a>
  <a class=\"myclass\" type=\"type2\">some text</a>
  <img src = \"myGraphic.jpg?id={Guid}\"/>
</Nodes>
我正在使用下面的XPath(可能不正确:-))
\"//A[@class] | //a[@class] | //IMG[@src] | //img[@src]\"
目的是获得img标签中所有具有type = \“ type1 \”的单独列表,type = \“ type2 \”的单独列表和id的单独列表。     
已邀请:
我的粗略回答是,除非您有一个非常大的文档或一组文档,否则性能并不是很重要。 在那种情况下,您可能会想使用SAX,无论如何,您只想遍历一次文档,而不是将整个内容都保存在内存中。因此,您将流经文档,在每个
a
元素处停止,然后根据其类型将其追加到list1或list2。     

要回复问题请先登录注册