XMLxml读取节点的问题
<Products><Product seq="1">
<PName>A1</PName>
</Product>
<Product seq="2">
<PName>A2</PName>
</Product>
<Product seq="3">
<PName>A3</PName>
</Product>
</Products>
//通过下面代码读取每个PNAME,但获得的值是一样的
XmlNodeList productlist = doc.SelectNodes("//Products");
for (int i = 0; i < productlist.Count; i++)
{
string seq = productlist[i].Attributes["seq"].Value; //这里能得到1,2,3
XmlNode node = productlist[i].SelectSingleNode("//PName");
stromg pname=node.InnerText; //为什么这里一直是A1的值?
}
怎么能通过循环得到每个Product节点,得到里面的PName的值
--------------------编程问答-------------------- http://blog.csdn.net/happy09li/article/details/7460521 --------------------编程问答-------------------- 请弄明白XPath中的“//”是什么意思,你的语句应该这么写才对:
XmlNodeList items = doc.SelectNodes("//Products/Product");--------------------编程问答-------------------- 选取节点
for (int i = 0; i < items.Count; i++)
{
string seq = items[i].Attributes["seq"].Value;
string pname = items[i].SelectSingleNode("PName").InnerText;
}
XPath 使用路径表达式在 XML 文档中选取节点。节点是通过沿着路径或者 step 来选取的。
下面列出了最有用的路径表达式:
表达式
描述
nodename 选取此节点的所有子节点。
/ 从根节点选取。
// 从匹配选择的当前节点选择文档中的节点,而不考虑它们的位置。
. 选取当前节点。
.. 选取当前节点的父节点。
@ 选取属性。
补充:.NET技术 , C#