使用DotNetZip压缩和解压缩文件

时间:2012-12-09 14:10:12

标签: c# compression zip dotnetzip

我正在使用DotNetZip。用它来压缩mp3文件。

ZipFile zip = new ZipFile();
zip.Password = "123";
zip.AddFile("R:\\abc\\a\\a 2 z.mp3");
zip.Save("R:\\abc\\a\\aaa.zip");

提取aaa.zip后,我收到一个损坏的mp3文件。原版有3.62MB时有3.31MB数据。如何解决这个问题? 任何帮助表示赞赏。

2 个答案:

答案 0 :(得分:1)

文档说明here

  

请注意,ZipFile类实现了IDisposable接口。   为了让ZipFile生成有效的zip文件,您可以使用它   在using子句(在VB中使用)中,或调用Dispose()方法   明确。请参阅示例,了解如何使用using子句。

因此,请尝试将代码包装在using块中:

using (ZipFile zip = new ZipFile())
{
   zip.Password = "123";
   zip.AddFile("R:\\abc\\a\\a 2 z.mp3");
   zip.Save("R:\\abc\\a\\aaa.zip");
}

另请参阅Save文档页面上的各种示例。

答案 1 :(得分:0)

这个问题真的不为人知。仅针对该指定文件会出现此问题。我试过其他文件,发现没有问题。谢谢你们。