【问题标题】:Formatting large XML-Files in C# (without XDocument)在 C# 中格式化大型 XML 文件(没有 XDocument)
【发布时间】:2020-02-14 13:18:32
【问题描述】:

我有非常大的 XML 文件,我必须对其进行格式化。文件最大可达 10GB。

我找不到任何不包含 XDocument 的解决方案。 XDocument 将整个文件加载到 RAM 中,这对于 10GB 文件显然会出现问题。尤其是在 32 位系统中

从头开始编写一个与流一起工作的 XML 格式化程序对我来说就像是在重新发明轮子。我无法想象我是第一个不得不与这样的东西一起工作的人。如果可能的话,我想使用现有的解决方案。

除了自己写所有东西之外,有没有人知道我可以使用的任何东西?

谢谢

  • .Net Framework 4.8
  • C#8

【问题讨论】:

  • 看看这个question 似乎那里提供的解决方案不会将整个文档加载到内存中。
  • 您是否考虑过同时使用 XmlReader 和 XmlWrite 通过流式传输重写文件?
  • 结合使用 xmlReader 和 xml linq。在以下帖子中查看我的答案:stackoverflow.com/questions/40456446/…

标签: c# .net xml stream


【解决方案1】:

您可以使用XmlReader 类。
XDocument implementation 不同,此类不会将整个文档加载到内存中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-29
    • 2011-06-23
    相关资源
    最近更新 更多