gpt4 book ai didi

c# - 如何在 C# 中使用 XMLREADER 从 XML 字符串中读取特定元素

转载 作者:数据小太阳 更新时间:2023-10-29 01:45:04 25 4
gpt4 key购买 nike

我有 XML 字符串:

   <GroupBy Collapse=\"TRUE\" GroupLimit=\"30\">
<FieldRef Name=\"Department\" />
</GroupBy>
<OrderBy>
<FieldRef Name=\"Width\" />
</OrderBy>

我是 C# 新手。我试图读取这两个元素的 FieldRef 元素的 Name 属性,但我不能。我使用了 XMLElement ,有没有办法选择这两个值?

最佳答案

尽管发布了无效的 XML(无根节点),但遍历 元素的一种简单方法是使用 XmlReader.ReadToFollowing 方法:

//Keep reading until there are no more FieldRef elements
while (reader.ReadToFollowing("FieldRef"))
{
//Extract the value of the Name attribute
string value = reader.GetAttribute("Name");
}

当然,LINQ to XML 提供了一个更加灵活和流畅的界面,如果在您的目标 .NET 框架中可用,也许使用起来会更容易?然后代码变为:

using System.Xml.Linq;

//Reference to your document
XDocument doc = {document};

/*The collection will contain the attribute values (will only work if the elements
are descendants and are not direct children of the root element*/
IEnumerable<string> names = doc.Root.Descendants("FieldRef").Select(e => e.Attribute("Name").Value);

关于c# - 如何在 C# 中使用 XMLREADER 从 XML 字符串中读取特定元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8888806/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com