案例:有一个很大的压缩 xml 文件需要由 .NET 程序解析。主要问题是文件太大,无法完全加载到内存中并解压缩。
文件需要逐部分读取,以便解压缩这些部分后它们“一致”。如果一个部分仅包含节点的一半,则将无法在任何 xml 结构中进行解析。
我们将不胜感激每一个帮助。 :)
编辑:当前的解决方案逐部分提取整个 zip 文件并将其作为 xml 文件写入磁盘上。然后读取并解析xml。到目前为止,我的网站还没有更好的想法:)。
最佳答案
使用 DotNetZip 您可以执行以下操作:
using (var zip = ZipFile.Read("c:\\data\\zipfile.zip"))
{
using (Stream s = zip["NameOfXmlFile.xml"].OpenReader())
{
// Create the XmlReader object.
using (XmlReader reader = XmlReader.Create(s))
{
while (reader.Read())
{
....
}
}
}
}
关于.net - 使用 .NET 读取压缩的 xml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2040824/