使用IRONZIP

如何在C#中解压缩Zip文件

查克尼特·宾
查克尼特·宾
2023年十二月12日
分享:

在 C# 开发中,从压缩包中提取或解压文件的过程在高效文件管理中起着至关重要的作用。 Zip 文件通常被称为 zip 压缩包,是一种将多个文件捆绑到一个压缩容器中的流行且通用的方法。 解压缩文件的需要源于压缩的固有优势,如减少存储空间和加快文件传输。

在处理大型数据集或传输多个文件时,zip 压缩文件通过将所有文件合并为一个压缩实体,提供了一种简化的解决方案。 zip 文件的提取涉及将这些压缩文件恢复到原始状态,从而实现无缝访问和操作。 在需要在 C# 应用程序中组织、共享或利用数据的场景中,这一过程是最基本的,强调了在 C# 开发中提取压缩文件以有效处理文件的重要性。

.NET,由微软开发,还提供了全面的System.IO.Compression.ZipFile类,提供强大的功能用于解压缩和处理ZIP文件。 有关此类中ExtractToDirectory方法的详细见解,您可以参考微软官方文档此处

在本文中,我们将探讨如何在 C# 中使用 IronZIP 解压 ZIP 文件,重点介绍其功能并演示逐步过程。

如何在 C# 中解压 Zip 文件;

  1. 在 Visual Studio 中创建一个新项目。

  2. 使用 NuGet 包管理器安装 Zip 库。

  3. 在项目中导入 Zip 库命名空间。

  4. 使用ExtractArchiveToDirectory方法解压缩档案。

  5. 运行应用程序查看提取的文件。

为什么需要解压 ZIP 文件

ZIP 文件是一种流行的归档格式,它将一个或多个文件捆绑到一个压缩容器中,从而减少了存储空间,方便了文件传输。 解压缩 ZIP 文件包括提取压缩数据,将其恢复到原始状态。 此过程通常用于需要访问或操作数据的场景,而IronZIP简化了C#开发人员的任务。

IronZIP - C# Zip 档案库

IronZIP,作为一个领先的C# ZIP归档库,提供了一系列功能,使解压ZIP文件变得简单高效。 它简化了创建、读取和提取 ZIP 文件的过程,为开发人员提供了管理压缩数据的强大工具集。

主要功能

  1. 易于使用的API:IronZIP提供了一个用户友好的API,使开发者可以简单地执行常见的ZIP操作。

  2. 多功能解压选项:IronZIP 支持多种解压选项,包括处理受密码保护的 ZIP 文件、应用 AES 加密以及指定压缩级别。

  3. 跨平台支持:使用IronZIP,开发人员可以在各种平台上无缝解压ZIP文件,确保跨不同环境的兼容性。

  4. .NET 集成:IronZIP 作为一个专注于 .NET 的库,可以顺利地与 C# 项目集成,支持不同的 .NET 版本和项目类型。

使用 IronZIP 解压 ZIP 文件的前提条件

在进入解压缩流程之前,请确保您已具备以下先决条件:

  1. Visual Studio:安装 Visual Studio,它是用于构建 C# 应用程序的综合集成开发环境。 如果未安装,请从其官方网站下载。

  2. IronZIP 包:使用 NuGet 包管理器为您的项目安装 IronZIP 库。

使用 IronZIP 在 C&num 中解压 ZIP 文件的步骤

第 1 步 在 Visual Studio 中创建 C# Console 项目

  • 打开 Visual Studio 并创建一个新的 C# 控制台项目。

    • 配置项目名称和位置。

    如何在 C# 中解压缩 Zip 文件:图 1 - 在 Visual Studio 中创建一个新的 C# 控制台项目。 配置项目的名称和位置,然后根据项目需求选择适当的.NET Framework版本

  • 根据您的项目要求选择合适的 .NET Framework 版本。 IronZIP 支持 .NET 和 .NET Core 的最新版本和旧版本,因此您可以从可用列表中选择任何版本。

步骤 2 使用 NuGet 软件包管理器安装 IronZIP

将 IronZIP 整合到项目中非常简单:

  • 右键单击 "解决方案资源管理器",打开 "为解决方案管理 NuGet 包"。

    • 在 NuGet 浏览选项卡中,搜索 IronZIP 并点击安装。

    ![如何在 C# 中解压缩 Zip 文件:图 2 - 打开项目的解决方案资源管理器并选择“为解决方案管理 NuGet 包”选项。 在“浏览”选项卡中,在搜索框中输入“ironzip”,通过简单选择软件包并点击“安装”来安装最新版本的IronZIP软件包。

    • 或者,您也可以使用 NuGet 软件包管理器控制台并运行以下命令:
Install-Package IronZIP

现在,让我们用 IronZIP 在 C# 控制台应用程序中完成解压现有 ZIP 文件的步骤

第 3 步 导入必要的命名空间

在主源代码文件顶部添加以下代码行:

using IronZIP;
using IronZIP;
Imports IronZIP
$vbLabelText   $csharpLabel

第 4 步 打开 Zip 档案格式并提取文件

要从Zip中提取文件,首先我们需要打开ZIP档案或RAR文件,这在某些程序应用中可能会有些困难。 然而,IronZIP 凭借其单一的方法使这项任务变得简单,并允许开发人员在提取过程中高效处理。 以下是打开 zip 并解压所选文件的代码:

public static void Main(string [] args)
{
        // Specify the path to the ZIP file
        string zipFilePath = "existing.zip";
        // Specify the directory to extract to
        string extractDirectory = "extracted";
        // Call ExtractArchiveToDirectory method
    IronArchive.ExtractArchiveToDirectory(zipFilePath, extractDirectory);
        Console.WriteLine("ZIP file decompressed successfully!");
}
public static void Main(string [] args)
{
        // Specify the path to the ZIP file
        string zipFilePath = "existing.zip";
        // Specify the directory to extract to
        string extractDirectory = "extracted";
        // Call ExtractArchiveToDirectory method
    IronArchive.ExtractArchiveToDirectory(zipFilePath, extractDirectory);
        Console.WriteLine("ZIP file decompressed successfully!");
}
Public Shared Sub Main(ByVal args() As String)
		' Specify the path to the ZIP file
		Dim zipFilePath As String = "existing.zip"
		' Specify the directory to extract to
		Dim extractDirectory As String = "extracted"
		' Call ExtractArchiveToDirectory method
	IronArchive.ExtractArchiveToDirectory(zipFilePath, extractDirectory)
		Console.WriteLine("ZIP file decompressed successfully!")
End Sub
$vbLabelText   $csharpLabel

上面的代码示例演示了使用 C# 中的 IronZIP 直接提取 ZIP 文件内容的方法。

代码解释:

  • 指定 ZIP 文件路径:

    • 使用字符串变量(zipFilePath)来存储您想要提取的 ZIP 文件路径。
    • 示例:string zipFilePath = "existing.zip";
  • 指定提取目录:

    • 使用另一个字符串变量(extractDirectory)来指定要提取 ZIP 文件内容的目录。
    • 示例:string extractDirectory = "extracted";
  • 调用 ExtractArchiveToDirectory 方法:

    • 使用 IronZIP 的 ExtractArchiveToDirectory 方法进行解压。

    • 将 ZIP 文件路径和提取目录作为参数传递给该方法。
    • 示例:IronArchive.ExtractArchiveToDirectory(zipFilePath, extractDirectory);

    为了使翻译更简单,我们可以编写如下单行代码:

IronArchive.ExtractArchiveToDirectory("existing.zip", "extracted");
IronArchive.ExtractArchiveToDirectory("existing.zip", "extracted");
IronArchive.ExtractArchiveToDirectory("existing.zip", "extracted")
$vbLabelText   $csharpLabel

要创建一个新的 Zip 文件以获得更多压缩和解压功能,请查看本教程以创建、读取和提取 zip 文件。

第 5 步 执行程序解压缩 ZIP 文件

构建并运行您的 C# 应用程序。 执行后,检查指定的目录(在本例中为“extracted”)以获取解压缩的文件。 现有的压缩文件包含 3 张图片,在此将它们解压缩到指定目录。

输出

如何在 C# 中解压 Zip 文件:图 3 - 输出:构建并运行您的 C# 应用程序以解压缩压缩文件(existing.zip),并在目录“extracted”中检查三个提取的图像文件。

结论

在 C# 中解压缩 ZIP 文件变得轻而易举,得益于 IronZIP 的直观 API 和多功能特性。 无论您是处理受密码保护的 ZIP 文件、实施 AES 加密还是指定压缩级别,IronZIP 都能简化任务,提高文件系统管理流程的效率。

IronZIP 是任何处理压缩文件的 C# 开发人员工具包中的宝贵补充。 它易于使用、支持跨平台并与 .NET 集成,是在各种 C# 项目中解压 ZIP 文件的可靠选择。 通过访问此文档页面,探索IronZIP的功能并利用其特性。

Iron Software 提供用于商业用途的免费试用。 从此处下载IronZIP库。

查克尼特·宾
软件工程师
Chaknith 负责 IronXL 和 IronBarcode 的工作。他在 C# 和 .NET 方面拥有深厚的专业知识,帮助改进软件并支持客户。他从用户互动中获得的洞察力,有助于提升产品、文档和整体体验。
< 前一页
如何在C# .NET Core中创建Zip文件
下一步 >
.NET ZipArchive(开发者教程)

准备开始了吗? 版本: 2025.4 刚刚发布

查看许可证 >