C# 如何从 xml 文件中获取所有元素名称

标签 c# xml

我想从一个xml文件中获取所有的元素名称,例如xml文件是,

<BookStore>
  <BookStoreInfo>
    <Address />
    <Tel />
    <Fax />
  <BookStoreInfo>
  <Book>
    <BookName />
    <ISBN />
    <PublishDate />
  </Book>
  <Book>
   ....
  </Book>
</BookStore>

我想获取元素名称“BookName”。 "ISBN"和 "PublishDate "以及这些名称,不包括 "BookStoreInfo"及其子节点的名称

试了好几种方法都不行,怎么办?

最佳答案

那么,使用 XDocument 和 LINQ-to-XML:

foreach(var name in doc.Root.DescendantNodes().OfType<XElement>()
        .Select(x => x.Name).Distinct())
{
    Console.WriteLine(name);
}

虽然有很多相似的路线。

关于C# 如何从 xml 文件中获取所有元素名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/847978/

相关文章:

xml - 将 xml 存储在 xml 中

android - 如何制作缩小 View 尺寸的缩放动画(一点)

c# - 是否 AvalonEdit :TextEditor have quick search/replace functionality?

c# - 如何将焦点放在 OnNavigatedTo 事件中的 TextBox 上?

c# - 有没有办法检索 C# 应用程序的当前内存使用情况?

java - ActionBar 中的 Home Up 按钮不起作用

python - 使用 Python 的 ElementTree 处理时哪种 XML 样式更好?

java - 在 Java/Groovy 中将 XML 转换为 Object[]

c# - 比较包含大量对象的两个列表(第 2 部分)

c# - Visual Studio 解决方案找不到System.Web.Http.WebHost