
C# 中的 ZIP 压缩文件介绍
ZIP 压缩文件 对于将文件和文件夹压缩并组织成一个单一的可管理容器至关重要。它们不仅减少文件大小以实现高效存储和传输,还保留元数据,并可以加密以增强安全性。在本文中,我们将探讨在 C# 中 以编程方式创建 ZIP 文件 的各种方法,包括如何添加文件和文件夹、创建密码保护的压缩文件以及应用 AES 加密。
您将学习到的内容
在本文中,您将发现如何:
- 使用 C# 创建 ZIP 压缩文件
- 将多个文件添加到 ZIP 压缩文件
- 将文件夹添加到 ZIP 压缩文件
- 使用 ZipCrypto 创建密码保护的 ZIP 压缩文件
- 使用 AES 加密加密 ZIP 压缩文件
- 设置并行压缩模式
C# ZIP 库
Aspose.ZIP for .NET 库是一个强大的工具,用于在 .NET 应用程序中处理 ZIP 文件操作,使得压缩或解压缩文件和文件夹变得更加容易。该库特别有效于 处理 C# .NET ZIP 压缩文件中的大文件,并支持 AES 加密以增强安全性。您可以轻松地从 NuGet 安装该库,或从 Downloads 部分下载二进制文件。
在 C# 中创建 ZIP 压缩文件
要 以编程方式在 C# 中创建 ZIP 文件,请按照以下步骤操作:
- 为输出的 ZIP 压缩文件创建一个 FileStream 对象。
- 将源文件打开为 FileStream 对象。
- 实例化 Archive 类。
- 使用 Archive.CreateEntry(string, FileStream) 方法将文件添加到压缩文件中。
- 使用 Archive.Save(FileStream) 方法保存 ZIP 压缩文件。
以下是一个代码示例,演示如何在 C# 中将文件添加到 ZIP 压缩文件中:
在 C# 中将多个文件添加到 ZIP 压缩文件
当您需要 将多个文件添加到 ZIP 压缩文件 时,可以采取几种方法:
使用 FileStream 添加多个文件
此方法使用 FileStream 类通过 Archive.CreateEntry(String, FileStream) 方法将文件添加到 ZIP 压缩文件中。以下是如何操作的:
使用 FileInfo 处理多个文件
或者,您可以利用 FileInfo 类加载文件,并使用 Archive.CreateEntry(String, FileInfo) 方法将它们添加到 ZIP 压缩文件中。以下是一个代码示例:
使用文件路径
您还可以直接将文件路径提供给 Archive.CreateEntry(String name, String path, Boolean openImmediately, ArchiveEntrySettings newEntrySettings) 方法。以下是一个示例:
在 C# 中将文件夹添加到 ZIP 压缩文件
要 在 C# 中将文件夹添加到 ZIP 压缩文件,请按照以下步骤操作:
- 为输出的 ZIP 压缩文件创建一个 FileStream 对象。
- 实例化 Archive 类。
- 使用 DirectoryInfo 类指定要压缩的文件夹。
- 使用 Archive.CreateEntries(DirectoryInfo) 方法将文件夹添加到 ZIP 中。
- 使用 Archive.Save(FileStream) 方法保存 ZIP 压缩文件。
以下是一个代码示例,演示如何将文件夹添加到 ZIP 文件中:
使用 ZipCrypto 在 C# 中创建密码保护的 ZIP 文件
要保护您的 ZIP 压缩文件,您可以使用 ZipCrypto 加密应用密码保护。这是通过在 Archive 的构造函数中使用 ArchiveEntrySettings 类来完成的,该构造函数接受加密类型作为参数。
以下是如何在 C# 中使用 ZipCrypto 创建密码保护的 ZIP 压缩文件:
使用 AES 加密创建密码保护的 ZIP 文件
Aspose.ZIP for .NET 库还支持 AES 加密以保护 ZIP 压缩文件。您可以选择以下 AES 加密方法:
- AES128
- AES192
- AES256
要应用 AES 加密,请使用 AesEcryptionSettings 类。以下是一个代码示例,演示如何在 C# 中创建一个带有 AES 加密的密码保护 ZIP 文件:
设置并行压缩模式
为了高效处理多个条目,您可以使用 ParallelOptions 类配置 API 的并行压缩。可用的并行压缩模式有:
- 从不 - 不进行并行压缩。
- 始终 - 进行并行压缩(注意可能的内存问题)。
- 自动 - 根据条目自动决定是否使用并行压缩。
以下是在使用 Aspose C# ZIP 库压缩多个文件时设置并行压缩模式的方法:
了解更多关于 C# .NET ZIP 库的信息
要深入了解 C# .NET ZIP 库,请查阅以下资源:
尝试我们的在线 ZIP 压缩工具
您还可以尝试基于 Aspose.ZIP for .NET 的 免费在线应用程序,轻松将文件压缩为 ZIP 压缩文件。
结论
在本文中,您已学习如何 以编程方式在 C# 中创建 ZIP 压缩文件。提供的代码示例演示了如何将文件和文件夹添加到 ZIP 压缩文件中,如何使用 ZipCrypto 和 AES 加密方法创建密码保护的 ZIP 文件,以及如何配置并行压缩。如果您有任何问题或需要进一步的帮助,请随时通过我们的 论坛 联系我们。
另请参见
关键词: C# .NET ZIP 压缩文件的编程创建,C# .NET Core ZIP 文件处理,向 C# .NET 6 中的 ZIP 压缩文件添加文件,使用 C# .NET 向 ZIP 压缩文件添加文件夹,C# 中从目录以编程方式创建 ZIP 文件,C# .NET ZIP 文件压缩与密码保护,.NET ZIP 文件的编程加密与解密,C# .NET 中大文件的高效 ZIP 文件创建,C# .NET ZIP 压缩文件中大文件的处理,C# .NET ZIP 压缩文件的错误处理与最佳实践,Aspose .NET ZIP 库的编程文件添加,Aspose .NET ZIP 库对大文件的性能,Aspose .NET ZIP 库:以编程方式添加文件夹和文件,C# .NET 编程 ZIP 文件更新,.NET ZIP 压缩文件:添加多个文件夹和文件,C# .NET 异步 ZIP 文件创建,.NET Framework ZIP 文件的编程创建,.NET Core ZIP 压缩文件的编程创建,.NET ZIP 文件操作示例:添加、删除、更新,C# .NET Core 3.1 中的编程 ZIP 文件处理,C# .NET 5 中的编程 ZIP 文件处理,C# .NET 7 中的编程 ZIP 文件处理,C# .NET ZIP 压缩文件的目录结构保留,C# .NET ZIP 文件 API:添加、删除、提取,在 C# .NET 中创建自解压 ZIP 文件,.NET ZIP 压缩库:最佳实践与优化,C# .NET 从多个来源创建 ZIP 文件,C# 向 ZIP 文件夹添加带有子目录的文件,.NET 编程 ZIP 文件处理:高级技术,C# .NET ZIP 库推荐用于大文件,C# .NET 大数据集的高效 ZIP 文件创建,.NET ZIP 文件创建的进度报告,C# .NET ZIP 压缩文件:以编程方式添加文件和文件夹,.NET 6 ZIP 文件处理:高效文件处理,C# .NET ZIP 压缩文件:安全性最佳实践,.NET ZIP 文件 API:高级用法和功能,C# 将目录添加到 ZIP 压缩文件并自定义压缩。