使用 IRONZIP 如何在 C# 中提取 ZIP 文件 Curtis Chau 已更新:六月 22, 2025 下载 IronZIP NuGet 下载 免费试用 法学硕士副本 法学硕士副本 将页面复制为 Markdown 格式,用于 LLMs 在 ChatGPT 中打开 向 ChatGPT 咨询此页面 在双子座打开 向 Gemini 询问此页面 在双子座打开 向 Gemini 询问此页面 打开困惑 向 Perplexity 询问有关此页面的信息 分享 在 Facebook 上分享 分享到 X(Twitter) 在 LinkedIn 上分享 复制链接 电子邮件文章 Zip 文件是一种流行的方法,用于将多个文件或目录压缩成一个单一的 Zip 存档格式,在许多软件应用中,提取它们是一个基本操作。 在 C# 的世界中,使用 IronZip 命名空间处理 Zip 存档是很容易的。 本文将探讨如何使用 C# 提取 ZIP 文件,并检查现有的工具和技术。 在文件系统中,数据的组织和存储是至关重要的,能够无缝解压文件成为一项关键技能。 有效地使用系统管理所有指定目录中的文件对于简化操作至关重要。 在这种情况下,一个强大的工具是 ZipArchive 类,这是 C# 中的一个强大功能,可以有效提取压缩文件。 本文将指导您如何利用 ZipArchive 类,揭示压缩文件本地文件头等重要概念。 前提条件 在您探索使用 IronZIP 和 IronPDF 操作 ZIP 文件之前,请确保满足以下先决条件: Visual Studio: 安装 Visual Studio 或任何其他您选择的 C# 集成开发环境 (IDE)。 基本 C# 知识: 熟悉 C# 编程语言的基本概念。 安装 IronZIP 包 要开始使用 IronZIP,请快速在您的项目中安装 IronZIP NuGet 包。 在 NuGet 包管理器控制台中执行以下命令: Install-Package IronZip 或者,直接从 IronZIP 官方 NuGet 网站 下载包。 一旦安装完成,通过在顶部添加 using IronZIP 语句来启动您的 C# 代码。 应用许可证密钥 确保您拥有有效的 IronZIP 许可证或试用密钥。通过将它分配给 License 类的 LicenseKey 属性来应用许可证密钥。 在导入语句之后并在使用任何 IronZIP 方法之前立即包含以下代码: IronZIP.Licensing.License.LicenseKey = "IRONZIP.MYLICENSE.KEY.1EF01"; IronZIP.Licensing.License.LicenseKey = "IRONZIP.MYLICENSE.KEY.1EF01"; IronZIP.Licensing.License.LicenseKey = "IRONZIP.MYLICENSE.KEY.1EF01" $vbLabelText $csharpLabel 这一步对于释放 IronZIP 在您的项目中的全部潜力至关重要。 用 C# 提取或压缩 Zip 文件 以下代码示例演示了如何在 C# 中处理 Zip 文件,无论您是要压缩还是提取文件。 用 C# 提取 Zip 文件 以下代码示例将使用 IronZIP 将文件解压缩到一个新目录中。 using IronZIP; namespace CS_ZipArchive { internal class Program { public static void Main(string[] args) { // Extract the contents of "QRCode.zip" into the "Extracted QRCode" directory IronArchive.ExtractArchiveToDirectory("QRCode.zip", "Extracted QRCode"); } } } using IronZIP; namespace CS_ZipArchive { internal class Program { public static void Main(string[] args) { // Extract the contents of "QRCode.zip" into the "Extracted QRCode" directory IronArchive.ExtractArchiveToDirectory("QRCode.zip", "Extracted QRCode"); } } } Imports IronZIP Namespace CS_ZipArchive Friend Class Program Public Shared Sub Main(ByVal args() As String) ' Extract the contents of "QRCode.zip" into the "Extracted QRCode" directory IronArchive.ExtractArchiveToDirectory("QRCode.zip", "Extracted QRCode") End Sub End Class End Namespace $vbLabelText $csharpLabel 上述代码使用了 IronZIP 库,该库提供了在 C# 中处理 ZIP 存档的功能。 此行旨在提取名为"QRCode.zip"的 ZIP 存档文件的内容,并将其保存到名为"Extracted QRCode"的目录中。 ExtractArchiveToDirectory() 方法负责提取 ZIP 存档的内容。它需要两个参数:源文件和目标。 创建存档文件 在 C# 中创建一个 ZIP 文件,我们可以利用 IronZIP 命名空间中的 IronArchive 类。 这个类让创建 ZIP 存档并在其中包含文件变得简单。 通过采用 IronArchive,开发人员可以轻松处理在他们的 C# 程序中制作 ZIP 文件的任务,提高效率并简化文件管理流程。 using IronZIP; namespace CS_ZipArchive { internal class Program { static void Main(string[] args) { // Create a new ZIP file named "myPDFFiles.zip" using (var archive = new IronArchive("myPDFFiles.zip")) { // Add files to the ZIP archive.Add(@"E:\Files\file1.pdf"); archive.Add(@"E:\Files\file2.pdf"); archive.Add(@"D:\Invoices\Invoice.pdf"); } } } } using IronZIP; namespace CS_ZipArchive { internal class Program { static void Main(string[] args) { // Create a new ZIP file named "myPDFFiles.zip" using (var archive = new IronArchive("myPDFFiles.zip")) { // Add files to the ZIP archive.Add(@"E:\Files\file1.pdf"); archive.Add(@"E:\Files\file2.pdf"); archive.Add(@"D:\Invoices\Invoice.pdf"); } } } } Imports IronZIP Namespace CS_ZipArchive Friend Class Program Shared Sub Main(ByVal args() As String) ' Create a new ZIP file named "myPDFFiles.zip" Using archive = New IronArchive("myPDFFiles.zip") ' Add files to the ZIP archive.Add("E:\Files\file1.pdf") archive.Add("E:\Files\file2.pdf") archive.Add("D:\Invoices\Invoice.pdf") End Using End Sub End Class End Namespace $vbLabelText $csharpLabel using 语句创建了一个与 IronArchive 类的实例关联的作用域资源。 IronArchive 构造函数以参数"myPDFFiles.zip"调用,指定要创建的新 ZIP 存档的名称。 在 using 块内部,有三行代码将文件添加到新创建的存档中: archive.Add(@"E:\Files\file1.pdf"); archive.Add(@"E:\Files\file2.pdf"); archive.Add(@"D:\Invoices\Invoice.pdf"); 这些代码行会将指定的 PDF 文件添加到"myPDFFiles.zip"存档中。由于 IronArchive 类实现了 IDisposable,因此 using 语句确保当代码块退出时,存档被正确关闭,资源被释放。 通过这种方式,该程序创建一个名为"myPDFFiles.zip"的 ZIP 存档,并向其中添加三个 PDF 文件。 IronZip 提供了创建和提取 zip 文件的超高效方法。 从现有文件系统创建一个新的 Ziparchive 我们可以从指定的 zip 文件创建一个新的 zip 存档。如下面所示,我们可以添加不同格式的多个文件,如图像和 PDF。 using IronZIP; namespace CS_ZipArchive { internal class Program { static void Main(string[] args) { // Create a new ZIP file named "new PDF Files.zip" by extracting content from "myPDFFiles.zip" using (var archive = IronArchive.FromFile("myPDFFiles.zip", "new PDF Files.zip")) { // Add files to the archive archive.Add(@"D:\Invoices\Image1.png"); archive.Add(@"D:\Invoices\PDF3.pdf"); } } } } using IronZIP; namespace CS_ZipArchive { internal class Program { static void Main(string[] args) { // Create a new ZIP file named "new PDF Files.zip" by extracting content from "myPDFFiles.zip" using (var archive = IronArchive.FromFile("myPDFFiles.zip", "new PDF Files.zip")) { // Add files to the archive archive.Add(@"D:\Invoices\Image1.png"); archive.Add(@"D:\Invoices\PDF3.pdf"); } } } } Imports IronZIP Namespace CS_ZipArchive Friend Class Program Shared Sub Main(ByVal args() As String) ' Create a new ZIP file named "new PDF Files.zip" by extracting content from "myPDFFiles.zip" Using archive = IronArchive.FromFile("myPDFFiles.zip", "new PDF Files.zip") ' Add files to the archive archive.Add("D:\Invoices\Image1.png") archive.Add("D:\Invoices\PDF3.pdf") End Using End Sub End Class End Namespace $vbLabelText $csharpLabel 此 C# 代码片段利用 IronArchive 通过从名为"myPDFFiles.zip"的现有 ZIP 文件中提取内容来创建一个名为"new PDF Files.zip"的新 ZIP 文件。在 using 块中,如"Image1.png"和"PDF3.pdf"的文件会被添加到新的 ZIP 存档中。该代码利用 IronArchive 有效地从一个存档中提取并添加特定文件到另一个存档。 在 C# 中压缩 PDF 文件 在 C# 中,您可以轻松地使用任何第三方库压缩 PDF 文件,其中一个最有效的工具是 IronPDF。 它的压缩算法使您能够在保持质量的同时缩小 PDF 文档的大小。 介绍IronPDF IronPDF 是一个流行的 C# 库,使开发人员能够在 .NET 框架应用程序中无缝处理 PDF 文件。 除了压缩功能外,它还提供多样的 PDF 生成、操作、转换等功能。 这种灵活性使其成为处理各种与 PDF 相关任务的宝贵工具。 无论是从头创建 PDF,从 HTML 转换为 PDF,还是从事其他 PDF 操作,IronPDF 简化了整个流程,提高了 C# 开发人员的生产力。 安装 IronPDF NuGet 包 要将 IronPDF 集成到您的项目中,执行以下命令以安装 IronPDF。 Install-Package IronZip 此命令简化了安装过程并将必要的依赖项添加到您的项目中,确保平稳集成。 编写代码在 C# 中压缩 PDF 文件 我们正在提供的 C# 代码片段中专注于 PDF 压缩。 using IronPdf; public static void CompressPdf() { // Open the PDF document located at D:\SamplePDFFile.pdf var pdf = new PdfDocument(@"D:\SamplePDFFile.pdf"); // Compress the images in the PDF document to 60% of their original quality pdf.CompressImages(60); // Save the compressed PDF as a new file pdf.SaveAs(@"D:\CompressedPDF.pdf"); } using IronPdf; public static void CompressPdf() { // Open the PDF document located at D:\SamplePDFFile.pdf var pdf = new PdfDocument(@"D:\SamplePDFFile.pdf"); // Compress the images in the PDF document to 60% of their original quality pdf.CompressImages(60); // Save the compressed PDF as a new file pdf.SaveAs(@"D:\CompressedPDF.pdf"); } Imports IronPdf Public Shared Sub CompressPdf() ' Open the PDF document located at D:\SamplePDFFile.pdf Dim pdf = New PdfDocument("D:\SamplePDFFile.pdf") ' Compress the images in the PDF document to 60% of their original quality pdf.CompressImages(60) ' Save the compressed PDF as a new file pdf.SaveAs("D:\CompressedPDF.pdf") End Sub $vbLabelText $csharpLabel 在上面的 C# 代码中,我们打开了一个名为"SamplePDFFile.pdf"的 PDF 文件; 其图像已被压缩到原始质量的 60%。 结果压缩的 PDF 文件随后被保存为位于指定文件夹位置的"CompressedPDF.pdf"。 此外,您可以使用 System 命名空间(using System),因为它为 C# 应用程序中的基本功能提供了基本的类和方法。 使用 ZipArchive 类,它是 System.IO.Compression 命名空间的一部分,您可以处理压缩文件,因为它允许无缝提取和操作压缩文件,确保压缩数据的高效处理。 在此 PDF 压缩示例的背景下,理解和利用 System 命名空间和 IronPDF 库展示了 C# 在管理多种文件格式(如压缩文件、gz 文件或 PDF)方面的多功能性和强大能力。 结论 总而言之,借助IronZIP 和 IronPDF 库的强大功能,在 C# 中操作 zip 文件和压缩 PDF 文件的过程变得流畅无比。 这篇文章提供了从 zip 存档中提取文件、创建新存档以及压缩 PDF 文件的见解,展示了这些库在 C# 开发中的多功能性和高效性。 通过遵循概述的步骤并结合 IronZIP 和 IronPDF 包,开发人员可以通过流畅的文件管理、动态 zip 存档创建和有效的 PDF 压缩提升他们的应用程序。 这些库是宝贵的资产,使开发人员能够轻松高效地处理复杂任务,从而最终增强 C# 应用程序在文件处理和压缩世界中的整体功能。 Iron 软件提供的 30 天试用 提供了一个无风险机会来探索其功能,便于确定其是否适用于特定项目。 在探索完 IronZIP 和 IronPDF 的所有功能后,您可以购买许可证。 常见问题解答 如何使用 C# 提取 ZIP 文件? 您可以使用 C# 中的 IronZIP 库提取 ZIP 文件。利用 ExtractArchiveToDirectory() 方法指定源 ZIP 文件和提取的目标目录。 使用 C# 中的 IronZIP 需要哪些条件? 要使用 IronZIP,您需要安装 Visual Studio 或其他 C# IDE,具备 C# 编程的基本知识,并通过命令 Install-Package IronZip 安装 IronZIP 库。 如何在 C# 中创建 ZIP 存档? 在 C# 中,您可以使用 IronZIP 库中的 IronArchive 类创建 ZIP 存档。您可以使用 Add() 方法向存档中添加文件,并根据需要指定存档名称。 如何在 C# 项目中管理 ZIP 文件操作的许可证? 要在 C# 项目中使用 IronZIP 管理许可证,请在导入 IronZIP 后立即将您的许可证密钥分配给 'License' 类中的 LicenseKey 属性,并在使用其任何方法之前。 我可以使用 ZIP 库压缩 PDF 文件吗? 虽然 ZIP 库专注于文件压缩,但对于专业的 PDF 压缩和处理,您应该使用 IronPDF,它提供了在 C# 中处理 PDF 文件的全面功能。 使用 IronZIP 管理 ZIP 文件有哪些优势? IronZIP 简化了 C# 中 ZIP 文件管理,提供了直接的提取和创建 ZIP 压缩文件的方法。它提高了软件应用程序中文件操作的效率和组织性。 如何使用 C# 将多个文件压缩到 ZIP 存档中? 要在 C# 中将多个文件压缩到 ZIP 存档中,可以使用 IronZIP 库中的 IronArchive 类。它提供了向单个压缩存档中添加多个文件和目录的功能。 IronPDF 提供哪些用于在 C# 中处理 PDF 的功能? IronPDF 提供了广泛的功能,包括 PDF 生成、转换、处理和压缩,使开发人员能够在 C# 应用程序中高效处理 PDF 文件。 Curtis Chau 立即与工程团队聊天 技术作家 Curtis Chau 拥有卡尔顿大学的计算机科学学士学位,专注于前端开发,精通 Node.js、TypeScript、JavaScript 和 React。他热衷于打造直观且美观的用户界面,喜欢使用现代框架并创建结构良好、视觉吸引力强的手册。除了开发之外,Curtis 对物联网 (IoT) 有浓厚的兴趣,探索将硬件和软件集成的新方法。在空闲时间,他喜欢玩游戏和构建 Discord 机器人,将他对技术的热爱与创造力相结合。 相关文章 已更新六月 22, 2025 如何在 C# 中将 ZIP 归档文件提取到目录 ZIP 文件是将多个文件和目录捆绑成单一归档的便捷方式。 阅读更多 已更新七月 28, 2025 如何在 C# 中创建带密码的 ZIP 文件 在本文中,我们将探索如何使用 C# 和 IronZIP 库创建一个密码保护的 ZIP 文件。 阅读更多 已更新七月 28, 2025 如何在 C# 中将文件解压到目录 无论您是在开发 Windows 应用程序还是 .NET 项目,理解文件解压过程都非常有价值。 阅读更多 C# ZIP 文件(使用 IronZIP 的开发人员教程)如何在 C# 中向 ZIP 添加文件