提取 .zip 档案的最快方法是什么?我的应用程序的性能很大程度上取决于提取 .zip 文件的速度。我正在使用 dotNetzip atm,但似乎可以有更多更快的工具。如果有,他们安全吗?我听说 QuickLZ 是最快的,但没有测试过,也没有找到任何代码示例或如何在 c# 中使用它。任何帮助将不胜感激。
根据我们自己的测试,7-zip CLI(exe 文件)是迄今为止最快的。 CLI 应用程序的性能优于所有这些 .NET dll,这听起来很疯狂,但不幸的是这是事实。
准确地说,我已经使用 ZipFile 和 ZipArchive 测试了 SharpCompress、SharpZipLib、DotNetZip、.NET 自己的实现。对于我们的测试文件,所有这些程序的运行时间约为 10-20 秒,但 7-zip 的 exe 进程通常在 7-8 秒内完成。
如果您决定使用 7-zip,这里是示例代码:
private static void ExtractWith7Zip(string archivePath, string extractPath)
{
var info = new ProcessStartInfo
{
FileName = @"C:\Program Files\7-Zip\7z.exe",
Arguments = $"x -y -o\"{extractPath}\" \"{archivePath}\"",
WindowStyle = ProcessWindowStyle.Hidden,
CreateNoWindow = true,
UseShellExecute = false,
RedirectStandardOutput = true
};
Process.Start(info)?.WaitForExit();
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)