如何在内存中构建xml元素然后保存到文件?

时间:2011-02-16 22:12:41

标签: c# xml

我想创建一个xml文件但是有选择地添加某些元素。我想在内存中构建这些元素,并能够选择是否写入xml文件。这可能吗?我正在使用C#WinForms。我已经看过XmlDocument了,它允许我在内存中构建一个完整的xml,但我不想这样做,因为它不适合大数据,也需要太多的内存。

2 个答案:

答案 0 :(得分:2)

如果主要关注大数据量,XmlWriter可能是理想的选择。 API可能不像XElement等那样优雅,但它是最直接和最有效的机制,旨在用于激发单向数据流。

它有一个双胞胎,XmlReader但是更难才能正确 - 由于处理传入的xml和适当地计算子树的复杂性。

答案 1 :(得分:1)

如果您有一个名为stream的流,那么您可以通过

创建一个XmlWriter
XmlWriter.Create(stream);

然后,您可以创建元素(类型为XmlElement),并在要添加的每个元素上调用WriteTo方法,并将{{1创建的XmlWriter作为参数传递}}