【发布时间】:2013-11-19 18:31:19
【问题描述】:
我有一个非常大的 xml 文件,其中包含一些我感兴趣的信息,但我需要以另一种方式呈现它。让我举例说明:
源 XML
<root attribute1="something" attribute2="somethingelse">
<items>
<item id="dontcare" name="Need This Name 1" url="http://NeedThisUrl1.com">
<availability>
<instores/>
</availability>
</item>
<item id="dontcare" name="Need This Name 2" url="http://NeedThisUrl2.com">
<availability>
<instores/>
</availability>
</item>
</items>
</root>
结果 XML
<Items>
<Item Attribute1="HardcodedValue1" Attribute2="HardcodedValue2">
<Parameter Name="Id">Hardcoded Value</Parameter>
<Parameter Name="Name">Need This Name 1</Parameter>
<Parameter Name="Url">http://NeedThisUrl1.com</Parameter>
<Parameter Name="Availability">Hardcoded Value</Parameter>
</Item>
<Item Attribute1="HardcodedValue1" Attribute2="HardcodedValue2">
<Parameter Name="Id">Hardcoded Value</Parameter>
<Parameter Name="Name">Need This Name 2</Parameter>
<Parameter Name="Url">http://NeedThisUrl2.com</Parameter>
<Parameter Name="Availability">Hardcoded Value</Parameter>
</Item>
</Items>
如何在 C# 中实现这一点?
【问题讨论】:
-
最好的办法是使用 Linq for XML。有很多可用的例子。您想获取 xdoc.Elements("items") 的所有元素,然后将属性转换为新文档中的元素。
标签: c# xml xml-parsing