C# Tutorial: Create, Read & Extract ZIP Files
创建 ZIP 程序通过选择文件或目录、指定压缩设置并创建归档来生成新的 ZIP 归档。
Extract ZIP 通过指定源 ZIP 文件、目标文件夹,并将文件和目录提取到指定位置来检索内容。
除了这些功能外,IronZIP还可以打开现有的ZIP文件,添加更多文件,然后将结果导出为包含所有文件的新ZIP文件。
快速入门:使用IronZIP轻松创建或提取ZIP快速上手——只需几个简单的 API 调用,即可使用 IronZIP 创建、修改或提取 ZIP 存档。 非常适合希望无需编写样板代码即可立即处理归档文件的开发人员。
-
1Install IronZIP with NuGet Package Manager
-
2复制并运行这段代码。
IronZipArchive.ExtractArchiveToDirectory("project.zip", "outputFolder");C# -
3部署到您的生产环境中进行测试
通过免费试用立即在您的项目中开始使用IronZIP
最小工作流程(5 个步骤)
- 下载用于创建、读取和提取 ZIP 文件的 C# 库
- 实例化IronZipArchive类以创建一个空的 ZIP 文件
- 使用
Add方法向空 ZIP 文件添加文件。 - 使用
ExtractArchiveToDirectory方法提取 ZIP 文件 - 通过将 ZIP 文件路径传递给构造函数来打开现有的 ZIP 文件。
创建存档示例
要创建一个ZIP存档对象,您可以方便地在IronZipArchive构造函数。 IronZIP使这个过程变得简单,可以仅用几行代码建立一个空的ZIP归档文件。
接下来,利用Add方法将您的文件导入ZIP存档。此方法允许您从多个位置添加文件,包括整个目录,其中所有文件都会被包括在内。
最后,使用SaveAs方法导出ZIP文件。
using IronZip;
// Create an empty ZIP
using (var archive = new IronZipArchive())
{
// Add files to the ZIP
archive.Add("./assets/image1.png");
archive.Add("./assets/image2.png");
// Export the ZIP file
archive.SaveAs("output.zip");
}Imports IronZip
' Create an empty ZIP
Using archive = New IronZipArchive()
' Add files to the ZIP
archive.Add("./assets/image1.png")
archive.Add("./assets/image2.png")
' Export the ZIP file
archive.SaveAs("output.zip")
End Using将压缩文件解压到文件夹
要从ZIP文件中检索内容,可以使用ExtractArchiveToDirectory方法。 只需指定目标 ZIP 文件的路径以及您希望保存解压文件的目录即可。
using IronZip;
// Extract ZIP
IronZipArchive.ExtractArchiveToDirectory("output.zip", "extracted");Imports IronZip
' Extract ZIP
IronZipArchive.ExtractArchiveToDirectory("output.zip", "extracted")将文件添加到现有存档
可以使用IronZIP高效地用附加文件修改现有的ZIP归档。该过程从通过现有ZIP文件路径实例化ZIP归档对象开始。 存档打开后,您可以使用Add方法将文件添加到现有存档中。
using IronZip;
// Open existing ZIP
using (var archive = new IronZipArchive("existing.zip"))
{
// Add files
archive.Add("./assets/image3.png");
archive.Add("./assets/image4.png");
// Export the ZIP file
archive.SaveAs("result.zip");
}Imports IronZip
' Open existing ZIP
Using archive = New IronZipArchive("existing.zip")
' Add files
archive.Add("./assets/image3.png")
archive.Add("./assets/image4.png")
' Export the ZIP file
archive.SaveAs("result.zip")
End Using借助此功能,您可以高效地更新和扩展 ZIP 存档,以满足项目不断变化的需求。 IronZIP使在C#项目中管理档案的过程变得轻而易举。
类似的方法可以用于其他存档和压缩格式,例如TAR、GZIP和BZIP2,分别使用IronBZip2Archive类。
常见问题解答
如何在 C# 中创建 ZIP 存档?
要在 C# 中创建一个 ZIP 归档,需从 IronZip 实例化 IronZipArchive 类。使用 Add 方法将文件或目录添加到归档中,并使用 SaveAs 方法保存归档。示例代码:using (var zip = new IronZipArchive()) { zip.Add(@"C:\path\to\directory"); zip.SaveAs(@"C:\path\to\output.zip"); }。
如何在 C# 中读取和提取 ZIP 文件的内容?
您可以使用 IronZipArchive 类打开 ZIP 文件来读取和提取内容。利用 ExtractArchiveToDirectory 方法指定提取文件的目标目录。示例:using (var zip = new IronZipArchive(@"C:\path\to\archive.zip")) { zip.ExtractArchiveToDirectory(@"C:\path\to\output\directory"); }。
可以在 C# 中向现有 ZIP 归档中添加文件吗?
是的,您可以在 C# 中向现有 ZIP 归档中添加文件。使用 IronZipArchive 类打开现有的 ZIP,使用 Add 方法包含额外的文件,然后使用 SaveAs 方法保存更新后的归档。
在 C# 中可以用于 ZIP 管理的库有哪些?
IronZip 是一个在 NuGet 上可用的用于管理 C# 中 ZIP 文件的完整库。它允许您使用 IronZipArchive 等类来高效创建、读取和提取 ZIP 文件。
如何在 C# 中处理其他压缩格式,如 TAR 和 GZIP?
除了 ZIP 文件,您还可以使用 IronZip 管理其他压缩格式。对于 TAR、GZIP 和 BZIP2,分别使用 IronTarArchive、IronGZipArchive 和 IronBZip2Archive 类来处理这些格式。
如何在 C# 中开始处理 ZIP 文件?
首先从 NuGet 下载 IronZip 库。实例化 IronZipArchive 类来创建或打开 ZIP 文件,并使用 Add 和 ExtractArchiveToDirectory 等方法管理归档。
是否可以在 C# 中从 ZIP 归档中提取特定文件?
是的,可以在 C# 中从 ZIP 归档中提取特定文件。使用 IronZipArchive 打开 ZIP 文件,并使用库提供的方法访问所需文件进行提取。
How does IronZIP simplify the creation of a ZIP archive in C#?
IronZIP simplifies ZIP archive creation by using straightforward methods like Add and SaveAs, enabling developers to manage file compression efficiently within a few lines of code.
What are the key steps to extract a ZIP file using IronZIP?
Key steps include calling the ExtractArchiveToDirectory method, where you specify paths for the source ZIP file and target extraction directory for file placement.
Can I use IronZIP for compression tasks other than ZIP?
Yes, for other compression tasks, IronZIP supports formats like TAR, GZIP, and BZIP2 by utilizing respective classes such as IronTarArchive, IronGZipArchive, and IronBZip2Archive.

Curtis Chau 拥有卡尔顿大学的计算机科学学士学位,专注于前端开发,精通 Node.js、TypeScript、JavaScript 和 React。他热衷于打造直观且美观的用户界面,喜欢使用现代框架并创建结构良好、视觉吸引力强的手册。