2
嗨我想复制一个xml文件并插入一些特定的元素locaiton更多的元素; 这样做的最好和最简单的方法是什么。我可以使用xmlReader读取元素并逐个写入每一种类型 - 我对此有一些问题,但是除此之外,对我来说太麻烦了,可以以某种方式更好地完成。 在下面的例子中,我有xml作为默认定义,需要以相同的格式创建新的xml,并向sheet1插入新值 - 但在现有行之后,并为sheet2执行相同的操作。复制一个xml文件,并在特定位置插入新元素 - C#
<book>
<Sheet ss:name="Sheet1">
<Table >
<Row >
<Cell/>
<Cell>
Title Name
</Cell>
<Cell >
Title Description
</Cell>
</Row>
</Sheet>
<a/>
<b/>
<Sheet ss:name="Sheet2">
<Table >
<Row >
<Cell/>
<Cell>
Title Name
</Cell>
<Cell >
Title Description
</Cell>
</Row>
</Sheet>
</book>
似乎是这样,原始的xmlFormat文件并不那么庞大,而最终的结果可能包含几MB。有任何链接/如何使用linq做到这一点的例子。我需要获取所有数据直到找到元素(示例中的shhet)将其复制到新的xml,插入新数据,并在所需元素后复制所有数据。谢谢你的帮助!!! Plus-在这种情况下xmlReader或linq与xml之间的优缺点比较 – user271077 2010-05-07 12:59:16
如果您将整个内容读入内存,则不需要执行任何复制操作:只需适当修改该树,然后将其保存之后。 LINQ to XML over XmlReader的好处是代码会简单得多。缺点是你*将*拥有内存中的所有数据。几MB根本不应该是一个问题。我会写一个你可能做什么的例子。 – 2010-05-07 13:17:54
谢谢,感谢。我应该关注什么文件大小? – user271077 2010-05-07 13:21:33