IRONSOFTWAREHOME
开发者更新

SevenZip C#(开发者如何使用)

Jacob Mellor,Team Iron 的首席技术官
Jacob Mellor
Updated: 2026年4月21日

在文件条目压缩和归档实用程序领域,7-Zip 以其多功能的开源解决方案脱颖而出。 以其高压缩率和对多种归档格式的支持而闻名,7-Zip 已成为寻求高效文件管理的用户的热门选择。 在本文中,我们将探讨 7-Zip 是什么、它如何工作、其主要功能、独特的 7z 格式、压缩率以及帮助 创建 7z 归档 的 C# .NET SDK。 此外,我们将在 .NET 生态系统中介绍 IronZIP 作为替代解决方案。

什么是 7-Zip?

7-Zip 是一款免费开源的文件归档实用程序,允许用户压缩和解压缩文件。 由 Igor Pavlov 开发的 7-Zip 支持多种压缩格式,使其成为管理和组织数据的多功能工具。

Sevenzip C#(开发人员如何使用)图1 - 7-Zip

主要功能

  • **高压缩比:**7-Zip 的一大特点是其能够实现高压缩比,往往比其他归档工具更高。 这可以在存储空间和文件传输到文件夹的速度方面带来显著节省。
  • **广泛的格式支持:**7-Zip 可以处理多种归档格式,包括 7z、ZIP、TAR、GZIP 等。 这种多功能性确保了与不同操作系统和软件的兼容性。
  • **加密和安全性:**7-Zip 提供强大的加密功能,允许用户使用 AES-256 加密保护其归档文件。 这确保了敏感数据始终受到保护。
  • **命令行支持:**除了其用户友好的图形界面,7-Zip 还提供了命令行版本,适合希望在文件管理任务中实现自动化和脚本编写的用户。

运作机制

7-Zip 利用先进的压缩算法减少文件和文件夹的大小。 它为其本地 7z 格式采用 LZMA(Lempel-Ziv-Markov chain-Algorithm)压缩算法,这有助于实现其令人印象深刻的压缩率。 该工具还支持其他常见格式如 ZIP、TAR 和 GZIP。

7z 格式

7z 格式是 7-Zip 用于其归档文件的专有格式。 它采用 LZMA 压缩算法,该算法以其出色的压缩率而闻名。 7z 格式支持固体压缩、文件拆分和自解压归档等功能。

压缩率

7-Zip 因其卓越的压缩率而闻名,特别是在使用 LZMA 算法的 7z 格式时。 这种效率使文件归档尺寸减小而不影响压缩文件的完整性。 由 7-Zip 创建的文件的压缩效果比普通 ZIP 格式高出 30-70%。

7-Zip LZMA SDK for C#

对于使用 C# 的开发人员,7-Zip 提供了一个 .NET SDK,能够将 7-Zip 功能无缝集成到自定义应用程序中。 SDK 允许开发人员以编程方式执行压缩和解压缩操作,为在 C# 项目中管理归档文件提供了灵活性。

如果希望在 C# 应用程序中使用 7-Zip,可以使用 7-Zip SDK 或在 C# 代码中利用命令行可执行文件。 以下是这两种方法的简要概述。

1. 7-Zip SDK (7z.dll)

7-Zip SDK 包含 7z.dll 库,可以在 C# 项目中使用。 这种方法允许以编程方式执行压缩和解压缩操作。

以下是使用 7-Zip SDK 的源代码示例:

using SevenZip;

class Program
{
    static void Main()
    {
        // Specify the path to the 7z.dll library
        SevenZipBase.SetLibraryPath("path_to_7z.dll");

        // Example: Extract files from an archive
        using (var extractor = new SevenZipExtractor("archive.7z"))
        {
            extractor.ExtractArchive("output_directory");
        }

        // Example: Compress files into an archive
        using (var compressor = new SevenZipCompressor())
        {
            // Add files to the archive
            compressor.CompressFiles("archive.7z", "file1.txt", "file2.txt");
        }
    }
}

确保将"path_to_7z.dll"替换为7z.dll库的实际路径。 您可以在 7-Zip 安装目录中找到 7z.dll 文件。

2. 命令行可执行文件

或者,您可以通过在System.Diagnostics.Process类中调用7-Zip命令行可执行文件(7z.exe)在您的C#源代码中使用。

using System.Diagnostics;

class Program
{
    static void Main()
    {
        // Example: Extract files from an archive using the command-line executable
        string archivePath = "archive.7z";
        string outputPath = "output_directory";
        ProcessStartInfo processStartInfo = new ProcessStartInfo
        {
            FileName = "7z.exe",
            Arguments = $"x \"{archivePath}\" -o\"{outputPath}\"",
            RedirectStandardOutput = true,
            UseShellExecute = false,
            CreateNoWindow = true
        };
        using (Process process = new Process { StartInfo = processStartInfo })
        {
            process.Start();
            process.WaitForExit();
        }
    }
}

确保"7z.exe"在系统的PATH中,或者在FileName属性中提供可执行文件的完整路径。

介绍 IronZIP

虽然 7-Zip 是一个强大的解决方案,但在 .NET 生态系统中寻求替代方案的开发人员可能会发现 IronZIP 是一个引人注目的选择。 IronZIP 是一个 .NET 压缩库,提供类似于 7-Zip 的功能,为开发人员提供工具在其 C# 应用程序中压缩、解压缩和操作归档文件。

Sevenzip C#(开发人员如何使用)图2 - IronZIP

IronZIP 是一个强大的 C# ZIP 归档库,使在 .NET 应用程序中处理 ZIP 文件变得简单。 通过其用户友好的 API,开发人员可以高效地使用 IronZIP 创建、读取和提取 ZIP 归档。 以下是一个简单代码片段,展示了使用 IronZIP 创建 ZIP 归档 的简易性:

using IronZip;

class Program
{
    static void Main()
    {
        // Specify the path for the new ZIP archive
        string zipFilePath = "output.zip";
        
        // Create an empty ZIP archive
        using (var archive = new IronArchive(zipFilePath))
        {
            // Add files to the ZIP
            archive.AddArchiveEntry("./assets/file1.txt");
            archive.AddArchiveEntry("./assets/file2.jpg");
            archive.AddArchiveEntry("./assets/file3.pdf");
        }

        Console.WriteLine("ZIP archive created successfully!");
    }
}

有关 IronZIP 及其功能或代码示例的更多信息,请访问 IronZIP 文档 页面。

结论

7-Zip 继续在文件压缩领域处于主导地位,向用户提供一个开源且功能丰富的解决方案,具有卓越的压缩率。 其对各种归档格式的支持和强大的加密功能使其成为普通用户和开发人员的多功能选择。 .NET SDK 进一步扩展了其对 C# 开发人员的实用性,便于无缝集成到自定义应用程序中。 对于在 .NET 环境中寻找替代方案的人来说,IronZIP 作为一个值得关注的竞争者脱颖而出,提供了针对 C# 开发人员特定需求的类似功能。

IronZIP 提供 IronZIP 的免费试用。 从 IronZIP 下载页面 下载并试用 IronZIP .NET Core 和 Framework 库。

Jacob Mellor,Team Iron 的首席技术官
首席技术官

Jacob Mellor 是 Iron Software 的首席技术官,也是一位开创 C# PDF 技术的有远见的工程师。作为 Iron Software 核心代码库的原始开发者,他从公司成立之初就开始塑造公司的产品架构,与首席执行官 Cameron Rimington 一起将公司转变为一家拥有 50 多名员工的公司,为 NASA、特斯拉和全球政府机构提供服务。

相关文章

Key in blue circle

立即获取免费的 30 天试用版密钥

Your trial license will be sent to your email address

无任何限制。100% 解锁。无需信用卡。

OR
bullet_checked无需信用卡或创建账户无任何限制。100% 解锁。无需信用卡。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried Iron Suite
预约您的免费现场演示
Booking Badge

深受全球数百万工程师信赖

Iron Software 的客户徽标
获取您的无义务咨询
填写下面的表格或通过sales@ironsoftware.com
您的资料将始终保密。
深受全球数百万工程师信赖
Iron Software 的客户徽标
立即获取您的免费30 天试用密钥
无需信用卡或创建账户
C# 用于 PDF 的 NuGet 库
通过 NuGet 安装

版本: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. 在解决方案资源管理器中,右键点击引用,管理 NuGet 包
  2. 选择浏览并搜索 “IronPDF”
  3. 选择包并安装
C# PDF DLL
下载 DLL

版本: 2026.9

或在此处下载 Windows 安装程序。

  1. 下载并解压 IronPDF 到您的解决方案目录中的 ~/Libs 之类的位置
  2. 在 Visual Studio 解决方案资源管理器中,右键点击引用。选择浏览,“IronPDF.dll”

$999