代码之家  ›  专栏  ›  技术社区  ›  AJM

XML文档与XML编写器

  •  14
  • AJM  · 技术社区  · 15 年前

    我看到您可以使用xmldocument或xmlwriter创建XML文件。

    使用一种方法比使用另一种方法有什么好处吗?

    4 回复  |  直到 15 年前
        1
  •  17
  •   Robert Rossney    15 年前

    XmlWriter 对XML数据进行基于流的写入。 XmlDocument 将XML数据构建为内存中的对象模型。

    你用 XMLX 当您需要在不使用与文档大小成比例的内存的情况下生成XML文档时。你用 XML文档 当您需要在内存中处理XML时——当您将现有的XML文档解析为对象模型,或者在任意位置创建元素,或者更新现有文档,或者使用xpath搜索文档时。(实际上,对于后一种情况,您将使用 XPathDocument 但是无论如何你 不能 使用一个 XML编写器 ,因为它是只写的。)

    当然,可以使用 XML文档 . 但实际上你在使用 XMLX 这样做,因为这就是 XML文档 正在内部使用。

        2
  •  3
  •   Darin Dimitrov    15 年前

    这取决于你的情况。 XmlDocument 将整个文档加载到内存中,而 XmlWriter 使用流,因此在处理大型XML文档时更适合它。另一方面,XML文档可能更容易使用。

        3
  •  3
  •   Manu JCasso    15 年前

    如果您支持.NET Framework 3.5,我建议您改为使用xdocument和xelement。它是一个更简单、更友好的API

        4
  •  0
  •   Arsen Mkrtchyan    15 年前

    xmldocument将孔数据存储在内存中,因此当文件很大(500 MB或更多)时速度很慢,但易于使用xmlwriter直接写入流