2011-02-09 51 views
3

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

感谢

回答

7

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

5

4 GB的限制,辗转在.NET 4.0中,这样你就可以在System.IO.Compression命名空间中的类。

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

来源:What's New in BCL

如果不能针对.NET 4.0框架的话,只怕我不能有任何的帮助。

1

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