使用 XMLTextReader 读取节点值
Read node value with XMLTextReader
我试图获取一个节点的值,但它总是 returns 我是一个空字符串。据我所知,我必须先访问节点才能阅读它,但我还没有找到 example/the 语法来完成它。我的 XML 节点名称是 "BuyNowPrice" 并且多次出现在我的 XML 文件中。
using (XmlReader xmlReader = XmlTextReader.Create(@"C:\benatia.xml"))
{
while (xmlReader.Read())
{
if (xmlReader.IsStartElement())
{
if (xmlReader.Name == "BuyNowPrice") Console.WriteLine(xmlReader.Name + ": " + xmlReader.Value);
}
}
}
为了读取元素的内容,需要调用ReadElementContentXxxxx()
方法。
if (xmlReader.IsStartElement())
{
if (xmlReader.Name == "BuyNowPrice")
Console.WriteLine(xmlReader.Name + ": "
+ xmlReader.ReadElementContentAsString());
}
LinqToXml
XDocument xml = XDocument.Load(file);
foreach(var e in xml.Descendants("BuyNowPrice"))
{
Console.WriteLine(e.Name + " : " + (string)e);
}
我试图获取一个节点的值,但它总是 returns 我是一个空字符串。据我所知,我必须先访问节点才能阅读它,但我还没有找到 example/the 语法来完成它。我的 XML 节点名称是 "BuyNowPrice" 并且多次出现在我的 XML 文件中。
using (XmlReader xmlReader = XmlTextReader.Create(@"C:\benatia.xml"))
{
while (xmlReader.Read())
{
if (xmlReader.IsStartElement())
{
if (xmlReader.Name == "BuyNowPrice") Console.WriteLine(xmlReader.Name + ": " + xmlReader.Value);
}
}
}
为了读取元素的内容,需要调用ReadElementContentXxxxx()
方法。
if (xmlReader.IsStartElement())
{
if (xmlReader.Name == "BuyNowPrice")
Console.WriteLine(xmlReader.Name + ": "
+ xmlReader.ReadElementContentAsString());
}
LinqToXml
XDocument xml = XDocument.Load(file);
foreach(var e in xml.Descendants("BuyNowPrice"))
{
Console.WriteLine(e.Name + " : " + (string)e);
}