使用 IRONZIP C# ZIP 文件(使用 IronZIP 的开发人员教程) Curtis Chau 已更新:七月 28, 2025 下载 IronZIP NuGet 下载 免费试用 法学硕士副本 法学硕士副本 将页面复制为 Markdown 格式,用于 LLMs 在 ChatGPT 中打开 向 ChatGPT 咨询此页面 在双子座打开 向 Gemini 询问此页面 在双子座打开 向 Gemini 询问此页面 打开困惑 向 Perplexity 询问有关此页面的信息 分享 在 Facebook 上分享 分享到 X(Twitter) 在 LinkedIn 上分享 复制链接 电子邮件文章 ZIP \u662f\u4e00\u79cd\u6d41\u884c\u7684\u65b9\u6cd5\uff0c\u53ef\u4ee5\u4f7f\u7528 FileStream \u9ad8\u6548\u5730\u5c06\u591a\u4e2a\u6587\u4ef6\u548c\u6587\u4ef6\u5939\u538b\u7f29\u5e76\u5408\u5e76\u6210\u4e00\u4e2a\u7edf\u4e00\u7684 ZIP \u538b\u7f29\u5305\u3002 在 C# 中使用这些文件变得很容易,使用 IronZIP 命名空间,该命名空间提供类来创建并从路径中提取现有的 ZIP 文件,也可操作 ZIP 存档。 无论您是在压缩文件、处理受密码保护的 ZIP 还是解压缩文件,IronZIP 命名空间中的 ZipFile 类都是您不可或缺的伙伴。 在此教程中,我们不仅探索了创建和提取 ZIP 归档文件的基本流程,还学习了实现它的代码示例。 ZipArchive 类无缝进阶到字符串路径,使您能够以无与伦比的精确度导航和操控 ZIP 文件。 此外,除了 ZIP 操作之外,我们还将探讨 IronPDF,一种在不影响文档完整性的前提下压缩 PDF 文件的工具。 IronZIP 和 IronPDF 的搭配为开发人员提供了一套强大的工具,可以在 C# 环境中高效管理压缩文件并简化 PDF。 前提条件 在您探索使用 IronZIP 和 IronPDF 操作 ZIP 文件之前,请确保满足以下先决条件: Visual Studio: 安装 Visual Studio 或任何其他您选择的 C# 集成开发环境 (IDE)。 基本 C# 知识: 熟悉 C# 编程语言的基本概念。 安装 IronZIP 包 要开始使用 IronZIP,只需在您的项目中快速安装 IronZIP NuGet 包。 在 NuGet 包管理器控制台中执行以下命令: Install-Package IronZip 或者,直接从 IronZIP 官方 NuGet 网站 下载包。 安装完成后,在您的 C# 代码开头添加 using IronZip; 语句以开始使用。 应用许可证密钥 确保您拥有有效的 IronZIP 许可证或试用密钥。通过将许可证密钥赋值给 License 类的 LicenseKey 属性来应用许可证密钥。 在导入语句之后并在使用任何 IronZIP 方法之前立即包含以下代码: using IronZip; namespace YourNamespace { class Program { static void Main(string[] args) { // Apply the IronZIP license key IronZip.Licensing.License.LicenseKey = "IRONZIP.MYLICENSE.KEY.1EF01"; // Your ZIP manipulation code using IronZIP } } } using IronZip; namespace YourNamespace { class Program { static void Main(string[] args) { // Apply the IronZIP license key IronZip.Licensing.License.LicenseKey = "IRONZIP.MYLICENSE.KEY.1EF01"; // Your ZIP manipulation code using IronZIP } } } Imports IronZip Namespace YourNamespace Friend Class Program Shared Sub Main(ByVal args() As String) ' Apply the IronZIP license key IronZip.Licensing.License.LicenseKey = "IRONZIP.MYLICENSE.KEY.1EF01" ' Your ZIP manipulation code using IronZIP End Sub End Class End Namespace $vbLabelText $csharpLabel 这一步对于释放 IronZIP 在您的项目中的全部潜力至关重要。 创建一个 ZIP 文件 使用 IronZIP 创建一个 ZIP 文件很简单。 利用 IronArchive 类创建一个空的 ZIP 存档,然后向其中添加文件。 以下代码段演示了创建名为 "Images.zip" 的 ZIP 文件并添加四个图像文件的过程: using IronZip; namespace CSharpZipArchive { internal class Program { static void Main(string[] args) { // Create an archive called Images.zip using (var archive = new IronArchive("Images.zip")) { // Add files to the ZIP archive.Add(@"E:\Datasets\1002-v1.png"); archive.Add(@"E:\Datasets\1002-v2.png"); archive.Add(@"E:\Datasets\1002-v3.png"); archive.Add(@"E:\Datasets\1002-v4.png"); } // The archive is automatically closed here } } } using IronZip; namespace CSharpZipArchive { internal class Program { static void Main(string[] args) { // Create an archive called Images.zip using (var archive = new IronArchive("Images.zip")) { // Add files to the ZIP archive.Add(@"E:\Datasets\1002-v1.png"); archive.Add(@"E:\Datasets\1002-v2.png"); archive.Add(@"E:\Datasets\1002-v3.png"); archive.Add(@"E:\Datasets\1002-v4.png"); } // The archive is automatically closed here } } } Imports IronZip Namespace CSharpZipArchive Friend Class Program Shared Sub Main(ByVal args() As String) ' Create an archive called Images.zip Using archive = New IronArchive("Images.zip") ' Add files to the ZIP archive.Add("E:\Datasets\1002-v1.png") archive.Add("E:\Datasets\1002-v2.png") archive.Add("E:\Datasets\1002-v3.png") archive.Add("E:\Datasets\1002-v4.png") End Using ' The archive is automatically closed here End Sub End Class End Namespace $vbLabelText $csharpLabel using 语句创建了 IronArchive 类的一个有范围的实例,并将其与变量 archive 关联。 IronArchive 构造函数接受一个参数:ZIP 文件的名称(在本例中为 "Images.zip")。 代码将四个文件添加到由 archive 变量表示的 ZIP 存档中。 文件通过其完整路径指定: E:\Datasets\1002-v1.png E:\Datasets\1002-v2.png E:\Datasets\1002-v3.png E:\Datasets\1002-v4.png 由于 IronArchive 类实现了 IDisposable,使用 using 语句可以确保存档正确关闭并在退出代码块时释放资源。 通过这种方式,该程序创建了一个名为 "Images.zip" 的 ZIP 存档并向其中添加了四个图像文件。 IronZip 使这一过程超级简单、快速和高效。 提取 ZIP 文件 我们可以使用一行代码在 C# 中提取 ZIP 文件。 using IronZip; namespace YourNamespace { public class ExtractionExample { public static void Main(string[] args) { // Extract contents of the ZIP archive IronArchive.ExtractArchiveToDirectory("Images.zip", "Extracted Images"); } } } using IronZip; namespace YourNamespace { public class ExtractionExample { public static void Main(string[] args) { // Extract contents of the ZIP archive IronArchive.ExtractArchiveToDirectory("Images.zip", "Extracted Images"); } } } Imports IronZip Namespace YourNamespace Public Class ExtractionExample Public Shared Sub Main(ByVal args() As String) ' Extract contents of the ZIP archive IronArchive.ExtractArchiveToDirectory("Images.zip", "Extracted Images") End Sub End Class End Namespace $vbLabelText $csharpLabel 上述代码提取了名为 "Images.zip" 的 ZIP 存档文件的内容。 提取的文件被放置在名为 "Extracted Images" 的目录中。 IronArchive 类提供了 ExtractArchiveToDirectory 方法来高效提取 ZIP 文件的内容。 这句简洁的代码有效地处理了提取过程,简化了文件管理。 使用 C# 向现有的 ZIP 文件添加文件 在 C# 软件应用中,向现有 ZIP 文件添加文件对于动态内容管理来说很有价值。 想象一个文件管理应用程序,用户可以轻松通过添加新文件来扩展压缩存档。 IronZIP 提供了无缝的功能来修改任何现有的 ZIP 文件。 using IronZip; namespace CSharpZipArchive { internal class Program { static void Main(string[] args) { // Open an existing ZIP file and create a new one using (var archive = IronArchive.FromFile("Images.zip", "NewImages.zip")) { // Add new files to the ZIP archive.Add(@"E:\Datasets\1011-v1.png"); archive.Add(@"E:\Datasets\1011-v2.png"); } // The new archive is automatically closed here } } } using IronZip; namespace CSharpZipArchive { internal class Program { static void Main(string[] args) { // Open an existing ZIP file and create a new one using (var archive = IronArchive.FromFile("Images.zip", "NewImages.zip")) { // Add new files to the ZIP archive.Add(@"E:\Datasets\1011-v1.png"); archive.Add(@"E:\Datasets\1011-v2.png"); } // The new archive is automatically closed here } } } Imports IronZip Namespace CSharpZipArchive Friend Class Program Shared Sub Main(ByVal args() As String) ' Open an existing ZIP file and create a new one Using archive = IronArchive.FromFile("Images.zip", "NewImages.zip") ' Add new files to the ZIP archive.Add("E:\Datasets\1011-v1.png") archive.Add("E:\Datasets\1011-v2.png") End Using ' The new archive is automatically closed here End Sub End Class End Namespace $vbLabelText $csharpLabel IronArchive.FromFile("Images.zip", "NewImages.zip") 方法从名为 "Images.zip" 的现有 ZIP 文件创建了一个存档对象,并指定新存档应命名为 "NewImages.zip"。 在 using 块内的两行代码将文件添加到新创建的存档中: archive.Add(@"E:\Datasets\1011-v1.png"); archive.Add(@"E:\Datasets\1011-v2.png"); 这些行将指定的图像文件添加到 "NewImages.zip" 存档中。 压缩 PDF 文件 除了管理 ZIP 文件之外,C# 还提供了无缝压缩 PDF 文件的功能。 借助第三方库:IronPDF,这项任务得以实现。 它作为 压缩 PDF 的可靠解决方案,能够保持其质量。 介绍IronPDF IronPDF 是一个多功能的 C# 库,旨在支持开发人员在其 .NET 应用程序中高效处理 PDF 文档。 它提供了许多功能,包括 PDF 生成、操作、文本和图像提取、表单处理、数字签名、HTML 转 PDF 转换、PDF 压缩和安全增强。 这些功能使其成为在 .NET 框架中执行 PDF 创建、编辑、报表生成和文档管理等任务的无价工具,确保生产力和 PDF 操作的定制化能力。 安装IronPDF 要将 IronPDF 集成到您的项目中,请在包管理器控制台中执行以下命令: Install-Package IronZip 编写 C# 代码压缩 PDF 文件 以下代码示例演示了在保持存档质量的同时压缩 PDF 文件。 using IronPdf; namespace YourNamespace { internal class Program { static void Main(string[] args) { // Load the PDF document var pdf = new PdfDocument(@"E:\myPDF.pdf"); // Compress images in the PDF to 60% of original quality pdf.CompressImages(60); // Save the compressed PDF pdf.SaveAs(@"E:\myCompressedPDF.pdf"); } } } using IronPdf; namespace YourNamespace { internal class Program { static void Main(string[] args) { // Load the PDF document var pdf = new PdfDocument(@"E:\myPDF.pdf"); // Compress images in the PDF to 60% of original quality pdf.CompressImages(60); // Save the compressed PDF pdf.SaveAs(@"E:\myCompressedPDF.pdf"); } } } Imports IronPdf Namespace YourNamespace Friend Class Program Shared Sub Main(ByVal args() As String) ' Load the PDF document Dim pdf = New PdfDocument("E:\myPDF.pdf") ' Compress images in the PDF to 60% of original quality pdf.CompressImages(60) ' Save the compressed PDF pdf.SaveAs("E:\myCompressedPDF.pdf") End Sub End Class End Namespace $vbLabelText $csharpLabel 在上面的代码中,我们使用 IronPDF 打开 "myPDF.pdf"。 CompressImages 方法将图像质量降低到 60%,压缩后的 PDF 保存在指定位置的 "myCompressedPDF.pdf" 中。 输出 执行上述代码会产生有形的文件大小减少,如输出所示,压缩后的 PDF 尺寸从原 0.9 MB 缩小到 254 KB。这展示了 IronPDF 在高效压缩 PDF 文件而不影响其质量方面的有效性。 使用 IronZIP 和 IronPDF 在 C# 中高效管理文件 在 C# 开发中,IronZIP 和 IronPDF 的组合为全面的文件管理提供了一种强大的解决方案。 IronZIP 在高效压缩和操作 ZIP 文件方面表现出色,为开发人员提供了无缝的创建和提取存档的体验。 同时,IronPDF 是一个强大的工具,用于处理 PDF 文档,使文件压缩时依然保持文档的完整性。 这种集成使开发人员能够在压缩存档和 PDF 文件间轻松切换,提升了应用程序的整体功能和性能。 无论是将多样化文件压缩到一个 ZIP 存档,还是优化 PDF 文档的大小,IronZIP 和 IronPDF 联合起来形成了一个灵活的开发工具包,解决了一系列与文件有关的挑战。 结论 总之,IronZIP 为 C# 提供了强大的能力来处理压缩文件,使开发人员能够高效地创建 ZIP 文件、提取并操作存档。 IronPDF 也是用于压缩 PDF 文件的强大工具,使其易于在保持文档完整性的同时缩小文件大小。 开发人员可以利用这些功能来提升应用程序的性能和功能,确保无缝处理归档和压缩文件。 此外,值得注意的是,IronPDF 提供了一种灵活的许可模式,包括 免费试用,允许开发人员探索其功能并确定最适合其项目的方案。 这一试用期为开发人员提供了一个有价值的机会来评估 IronZIP 和 IronPDF 的功能,从而决定是否进行 许可。 常见问题解答 如何在 C# 中创建一个 ZIP 文件? 要在 C# 中创建一个 ZIP 文件,您可以使用 IronZIP 库中的 IronArchive 类。该类允许您创建一个空的 ZIP 压缩包并添加文件,提供高效的方法来管理 ZIP 内容。 如何在 C# 中从 ZIP 压缩包中提取文件? 可以使用 IronZIP 库的 IronArchive 类中的 ExtractArchiveToDirectory 方法从 ZIP 压缩包中提取文件。该方法允许您指定要提取文件的目录。 我可以在 C# 中处理密码保护的 ZIP 文件吗? 是的,IronZIP 提供了管理密码保护的 ZIP 文件的功能,能够安全地压缩和提取敏感数据。 在 C# 中安装 ZIP 库包的步骤是什么? 要安装 IronZIP 库,请在 NuGet 包管理器控制台中使用命令 Install-Package IronZip,或直接从官方网站下载。 如何在 C# 中为 ZIP 库应用许可证密钥? 要为 IronZIP 应用许可证密钥,请在应用程序中将您的许可证密钥分配给 Licensing.License 类的 LicenseKey 属性。 如何在 C# 中压缩 PDF 文件? 要在 C# 中压缩 PDF 文件,可以使用 IronPDF。加载 PDF 文档并应用 CompressImages 方法以降低图像质量,然后将压缩的 PDF 保存到所需位置。 C# 的 PDF 库是否提供试用版? 是的,IronPDF 提供免费试用版,允许开发者在签署许可协议之前探索其功能。 在 C# 中处理 ZIP 和 PDF 文件的先决条件是什么? 在 C# 中处理 ZIP 和 PDF 文件,您需要安装 Visual Studio 或类似的 C# 集成开发环境,并具备 C# 编程概念的基本理解。您还需要 IronZIP 和 IronPDF 库。 一种用于处理 ZIP 文件的 C# 工具是什么? IronZIP 是一个 C# 库,设计用于高效地创建、操作和提取 ZIP 压缩包,是开发人员在 .NET 应用程序中处理 ZIP 文件的理想选择。 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 归档文件如何在 C# 中提取 ZIP 文件