C# 在C中循环使用XML的帮助#

C# 在C中循环使用XML的帮助#,c#,xml,C#,Xml,我有一个xml,看起来像这样 <words> <word>word1</word> <word>word2</word> <word>word3</word> <word>word4</word> </words> 谢谢 您选择的是根words节点本身,而不是子word节点。将/word添加到XPath: XmlNodeList nod

我有一个xml,看起来像这样

<words>
     <word>word1</word>
     <word>word2</word>
     <word>word3</word>
     <word>word4</word>
</words>

谢谢

您选择的是根
words
节点本身,而不是子
word
节点。将
/word
添加到XPath:

XmlNodeList nodes = root.SelectNodes("/words/word");

您需要在节点树下再移动一层:

foreach(XmlNode node in nodes)
 {
     XmlNodeList innerNodes = node.SelectNodes("/word");
     foreach(Xmlnode innerNode in innerNodes )
     {
          Console.WriteLine(innerNode.InnerText);
     }
 }

XPath中缺少/word


您还可以使用Linq(XDocument)来获取数据。

我建议使用中的类来完成此任务:

XElement wordsElement = XElement.Parse(yourXmlText);

var words = from w in wordsElement.Elements("word")
            select w.Value;

谢谢,这是最快的修复,效果非常好。非常感谢。谢谢你,我可能会按照你的建议改用linq。
XElement wordsElement = XElement.Parse(yourXmlText);

var words = from w in wordsElement.Elements("word")
            select w.Value;