C# 如何从XML中获取所需的节点

C# 如何从XML中获取所需的节点,c#,xml,xpath,.net-2.0,C#,Xml,Xpath,.net 2.0,但是xn.Text的值为空 我只想得到水果的值,就像这个例子中的哈哈哈 编辑 我现在更改了XML string[] cFruitName; int i=0; XmlDocument a= new XmlDocument(); a.LoadXml(getXML()); foreach (XmlNode xn in a) { cFruitName[i] = xn.Text; i++; } 印刷品 var xml = XDocument.Parse(ge

但是xn.Text的值为空

我只想得到水果的值,就像这个例子中的哈哈哈

编辑

我现在更改了XML

  string[] cFruitName; int i=0;
  XmlDocument a= new XmlDocument();
  a.LoadXml(getXML());

  foreach (XmlNode xn in a)
  {
     cFruitName[i] = xn.Text;
     i++;
  }
印刷品

var xml = XDocument.Parse(getXML());

var fruits = xml.Descendants("fruit").Select(n => n.Value);

Console.WriteLine(string.Join(Environment.NewLine, fruits));
对.net 2.0版本使用XPath

打印相同的

印刷品

var xml = XDocument.Parse(getXML());

var fruits = xml.Descendants("fruit").Select(n => n.Value);

Console.WriteLine(string.Join(Environment.NewLine, fruits));
对.net 2.0版本使用XPath

打印相同的

尝试以下操作:

XmlDocument xml = new XmlDocument();
xml.LoadXml(getXML());

XmlNodeList fruits = xml.SelectNodes("//fruit");

foreach (XmlNode fruit in fruits)
{
    Console.WriteLine (fruit.InnerText);
}

试试这个:

XmlDocument xml = new XmlDocument();
xml.LoadXml(getXML());

XmlNodeList fruits = xml.SelectNodes("//fruit");

foreach (XmlNode fruit in fruits)
{
    Console.WriteLine (fruit.InnerText);
}


很抱歉,我不能使用LINQ,我正在使用.net2.0Pro提示:在其核心,每个LINQ查询只是一种在collectionOfThings{ifthing.Property==sometest{//do something}中表示foreachthing的简写方式。当然,您可以使用LINQ。请在这里查看.net2.0的Linq抱歉,我不能使用Linq,我正在使用.net2.0Pro提示:在它的核心,每个Linq查询只是一种简写的方式,用于在集合中表示foreachthing{ifthing.Property==sometest{//do something}当然,您可以使用Linq。检查这里的Linq for.net 2.0为什么水果里面有水果有更好的方法吗,请告诉我为什么水果里面有水果有更好的方法吗,请告诉meCheck你的变量名。啊,我从作者的帖子上复制了它,以前的版本。检查你的变量名。啊,我从作者的帖子上复制了它,以前的版本。
string[] cFruitName; int i=0;
XmlDocument a= new XmlDocument();
a.LoadXml(getXML());

foreach (XmlNode xn in a.Where(x=>x.Text != null))
{
   cFruitName[i] = xn.Text;
   i++;
}
string[] cFruitName; int i=0;
XmlDocument a= new XmlDocument();
a.LoadXml(getXML());

foreach (XmlNode xn in a.Where(x=>x.Name == "fruit"))
{
   cFruitName[i] = xn.Text;
   i++;
}