使用System.IO.Compression解压缩大型Gzip文件无法正常工作

时间:2016-06-09 13:21:56

标签: c# .net compression

我有一个3.2GB的gzip文件,我需要解压缩,但使用我的代码的输出只产生一个64KB的文件,这是不对的。

{{1}}

我使用的是.NET 4.5,我理解的CopyTo方法应该可以处理大于4GB的文件但是没有运气。任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:3)

我强烈建议您使用DotNetZip's接口来使用zlib而不是NET 4.5(或任何版本的.NET)。 NET 4.5在该接口中存在错误,Microsoft已声明他们won't fix(!)。

答案 1 :(得分:0)

我找到了一个解决方案,但它涉及对.NET的开源解压缩项目进行一些代码更改。基本上,当您有多个gzip流并且文件太大时,问题就会突然出现。在代码中,正在使用int而不是long,这导致了我遇到的行为。代码修改后,按预期工作。