如何使用 XMlElement 获取元素属性的值
本文关键字:属性 元素 获取 何使用 XMlElement | 更新日期: 2023-09-27 18:33:41
我正在用 c# XmlElement
。我有一个XmlElement
.XmlElement
的来源将类似于下面的示例。
样本:
<data>
<p>hello all
<strong>
<a id="ID1" href="#" name="ZZZ">Name</a>
</strong>
</p>
<a id="ID2" href="#" name="ABC">Address</a>
</data>
我必须遍历上面的XML才能搜索元素名称a
。我还想将该元素的 ID 提取到变量中。
基本上我想获取元素的 ID 属性<a>
。它可以作为子元素或单独的父元素出现。
任何人都可以帮助如何做到这一点。
由于您使用的是 C# 4.0,因此您可以像这样使用 linq-to-xml:
XDocument xdoc = XDocument.Load(@"C:'Tmp'your-xml-file.xml");
foreach (var item in xdoc.Descendants("a"))
{
Console.WriteLine(item.Attribute("id").Value);
}
应该为您提供元素a
无论它在层次结构中的哪个位置。
从您的注释中,对于仅使用 XmlDocument 和 XmlElement 类的代码,等效代码将是:
XmlDocument dd = new XmlDocument();
dd.Load(@"C:'Tmp'test.xml");
XmlElement theElem = ((XmlElement)dd.GetElementsByTagName("data")[0]);
// ^^ this is your target element
foreach (XmlElement item in theElem.GetElementsByTagName("a"))//get the <a>
{
Console.WriteLine(item.Attributes["id"].Value);//get their attributes
}