DotNetZip  、SharpZipLib 和 WinZip 压缩比较

测试文件夹:

·E:\001    包含一些手机主题和图片文件,共44.7M
·E:\002    包含一些文本文件和图片文件,共313M

测试代码:

long i = DateTime.Now.Ticks;

//DotNetZip 1.7
using (ZipFile zip = new ZipFile(@"E:\001a.zip", Encoding.Default))
{
    zip.AddDirectory(@"E:\001");
    zip.Save();
}

//SharpZipLib 0.85
(new FastZip()).CreateZip(@"E:\001b.zip", @"E:\001", true, "");

//WinZip 10.0
Process process = new Process();
process.StartInfo.UseShellExecute = false;
process.StartInfo.CreateNoWindow = true;
process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
process.StartInfo.RedirectStandardOutput = false;//如果不需获取返回值,设置此属性为false,否则程序会卡死
process.StartInfo.FileName = "winzip.exe";
process.StartInfo.WorkingDirectory = Environment.CurrentDirectory;
process.StartInfo.Arguments = @"-p -r E:\001c.zip E:\001";
process.Start();
process.WaitForExit();
process.Close();

long j = DateTime.Now.Ticks;

MessageBox.Show(((j - i)/10000000).ToString());

测试结果:

E:\001压缩比较
DotNetZip:平均时间11s,zip文件大小44.4M;
SharpZipLib:平均时间7s,zip文件大小44.3M;
WinZip:平均时间5s,zip文件大小44.3M;

E:\002压缩比较
DotNetZip:平均时间47s,zip文件大小32M;
SharpZipLib:平均时间37s,zip文件大小30.9M;
WinZip:平均时间18s,zip文件大小32.2M;

测试结论:

总体来说,三者生成的zip文件大小都差不多,DotNetZip平均使用的时间最多,SharpZipLib其次,WinZip最少,压缩的文件越大越明显。

上一篇: DotNetZip使用示例
下一篇: SharpZipLib使用示例
文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags:
最新日志:
评论: 0 | 引用: 0 | 查看次数: 6951
发表评论
登录后再发表评论!