在c#中解压缩4gb文件

时间:2011-02-09 16:40:43

标签: c# zip gzip compression

我正在使用sharp lib for zip和unzip。它可以很好地工作到4GB文件,所以寻找一些.net框架解决方案。我在dotnet中尝试过Gzipcompression。这也无法解压缩4gb文件。 你知道任何其他处理大文件的zip库吗?

由于

3 个答案:

答案 0 :(得分:7)

DotNetZip将在100%托管代码中正确处理ZIP64存档(> 4.2GB)。它(从我的测试中)也有一个非常好的功能集,并且比用于压缩的框架库做得更好(即:使用更小的文件的相同或更好的性能 - 通常约为框架大小的1/3;压缩例程。)

答案 1 :(得分:5)

.NET 4.0中删除了4 Gb限制,因此您可以使用System.IO.Compression命名空间中的类。

  

中的压缩算法   System.IO.Compression已经   改进了.NET 4. DeflateStream和   GZipStream已经不再膨胀了   压缩数据。这意味着   很多情况下你会看得更清楚   使用这些时的压缩比   .NET上的流4.我们也删除了   4 GB的大小限制,所以你现在可以   压缩超过4 GB的流。

来自:What's New in BCL

如果您无法定位.NET 4.0框架,那么我恐怕无法提供帮助。

答案 2 :(得分:1)

如果外观不是问题,你可以使用Shell FolderItems(shell32.dll),唯一的缺点是它使用起来有点棘手,你得到的是Windows进度对话而不是回调例程。