【发布时间】:2015-10-29 17:06:43
【问题描述】:
我有一个 xml,想从中获取所有节点和值。下面是我要创建的源 xml 和输出的示例:
<bookstore>
<book category="COOKING">
<title lang="en">Everyday Italian</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price curr="$">30.00</price>
</book>
</bookstore>
Nodes Values
bookstore.book.category COOKING
bookstore.book.title.lang en
bookstore.book.title Everyday Italian
bookstore.book.author Giada De Laurentiis
bookstore.book.year 2005
bookstore.book.price.curr $
bookstore.book.price 30
我要创建的输出由 2 列、节点及其值组成。我怎样才能做到这一点?我应该使用 XmlDocument 类吗?
【问题讨论】:
-
我目前没有看到任何 XML...当您 确实 有一些 XML 时,我建议一般使用 LINQ to XML。您可以使用
Descendants()获取所有元素,然后对于每个元素,您可以使用AncestorsAndSelf()构造一个名称链。我建议您尝试使用这么多信息,并包括您在问题中的进展程度(以及 XML)。 -
源 XML 肯定是有益的,因为从输出来看,它看起来不是有效的 XML。我不认为
节点允许同时具有 子节点和文本值(日常意大利语)。 -
刚刚发布了您需要的代码。如果对您有用,请标记为答案。它产生您需要的完全相同的输出。谢谢。
标签: c# .net xml-parsing