![](/img/trans.png)
[英]How to retrieve list of XML Nodes using SelectNode() WITHOUT attributes?
[英]How to retrieve tags inside certain tag for XML using GetElementsByTagName/SelectNode/SelectSingleNode?
假設我有一個 XML 這種格式:
<TEST>
<DRINK>
<NAME>Ice tea</NAME>
<NAME>Milo</NAME>
<NAME>Coffee</NAME>
</DRINK>
<FOOD>
<NAME>Fried Rice</NAME>
<NAME>Hamburger</NAME>
<NAME>Fried Noodles</NAME>
</FOOD>
</TEST>
如何只檢索食物名稱並將它們放入 ASP.NET web 表單文本框?
這是我當前的代碼:
XmlDocument doc = new XmlDocument();
doc.Load(filepath);
root = doc.DocumentElement;
TextBox1.Text = root.GetElementsByTagName("NAME")[0].InnerText;
TextBox2.Text = root.GetElementsByTagName("NAME")[1].InnerText;
TextBox3.Text = root.GetElementsByTagName("NAME")[2].InnerText;
此代碼將檢索飲料名稱而不是食品名稱。 如何讓它讀取 FOOD 標簽中的 NAME 標簽?
通過使用XmlNode.SelectNodes
方法並提供 XPath。
var foodElements = root.SelectNodes("FOOD/NAME");
Console.WriteLine(foodElement[0].InnerText);
Console.WriteLine(foodElement[1].InnerText);
Console.WriteLine(foodElement[2].InnerText);
基本xml解析。
這個:
{
string sXML
=
@"<TEST>
<DRINK>
<NAME>Ice tea</NAME >
<NAME>Milo</NAME >
<NAME>Coffee</NAME>
</DRINK>
<FOOD>
<NAME>Fried Rice</NAME>
<NAME>Hamburger</NAME>
<NAME>Fried Noodles</NAME>
</FOOD>
</TEST>";
XmlDocument myXml = new XmlDocument();
myXml.LoadXml(sXML);
XmlNodeList myNodes = myXml.SelectNodes("TEST/FOOD/NAME");
foreach (XmlNode OneNode in myNodes)
{
Debug.Print(OneNode.InnerText);
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.