通过XML文档循环

我的方法:

if (File.Exists( @"C:\config.xml")) { System.Xml.XmlDocument xd = new System.Xml.XmlDocument(); xd.Load( @"C:\config.xml"); System.Xml.XmlElement root = xd.DocumentElement; System.Xml.XmlNodeList nl = root.SelectNodes("/config"); foreach (System.Xml.XmlNode xnode in nl) { string name = xnode.Name; string value = xnode.InnerText; string nv = name + "|" + value; Send(nv); } 

我的Xml Doc

   D 300 34000 3800 help 1 ....and so on  

现在我的方法返回前2个,没有别的。 我究竟做错了什么…

use System.Xml命名空间来避免长类型资格,即……

  using System.Xml; 

然后尝试这样的事情..

  XmlNodeList nl = xd.SelectNodes("config"); XmlNode root = nl[0]; foreach (XmlNode xnode in root.ChildNodes) { string name = xnode.Name; string value = xnode.InnerText; string nv = name + "|" + value; Send(nv); } 

我相信你的方法有问题。

a)我不认为SelectNodes应该采用/config参数,而应该采用config

b)选择第一个(并且只有 – .Net中的XML文件必须只有一个根节点)根节点后,您需要遍历根的ChildNodes

root是标签,所以我不明白root.SelectNodes(“/ config”)应该如何工作。 请改用root.Childnodes。