
在上一篇文章中,我们探讨了使用C# 创建ZIP 压缩文件的各种方法。在本文中,我们将基于此基础,重点关注 7z 格式。7z 格式基于开源架构,提供高压缩比,并具备使用 256 位 AES 加密 来保护文件及其名称的能力。
您将学习到的内容
在本指南中,您将学习如何 使用 C# 程序化创建 7z (7-Zip) 压缩文件。我们将涵盖:
所有示例和代码片段均基于 Aspose.ZIP for .NET API。确保通过以下方法之一安装 API:
- 通过 NuGet 包管理器 安装。
- 下载 DLL 并将其引用添加到您的项目中。
使用 C# 创建 7z (7-Zip) 压缩文件
您可以在两种主要情况下将文件压缩为 7z 压缩文件:处理 单个文件 或 多个文件。以下是处理这两种情况的方法。
使用单个条目创建 7z 压缩文件
要创建一个包含单个文件的 7z 压缩文件,请按照以下步骤操作:
- 打开一个新的 FileStream 来创建 7z 文件。
- 创建 SevenZipArchive 类的实例。
- 使用 SevenZipArchive.CreateEntry(String, String, Boolean, SevenZipEntrySettings) 方法将文件添加到压缩文件中。
- 使用 SevenZipArchive.Save(Stream) 方法保存压缩文件。
以下是一个 C# 7z 压缩文件示例,演示上述步骤:
使用多个条目创建 7z 压缩文件
如果您需要压缩多个文件,可以将它们放入一个文件夹,并将文件夹的路径传递给 SevenZipArchive.CreateEntries() 方法。按照以下步骤操作:
- 创建 SevenZipArchive 类的实例。
- 将文件夹的路径传递给 SevenZipArchive.CreateEntries(String, Boolean) 方法。
- 调用 SevenZipArchive.Save(String) 方法。
以下是如何使用 C# 创建一个包含多个条目的 7z 压缩文件:
使用 C# 创建 AES 加密的 7z 压缩文件
7z 格式支持 AES 加密 以增强安全性。要加密 7z 文件,请使用 SevenZipAESEncryptionSettings 类。以下是一个代码示例,演示如何使用 C# 创建 AES 加密的 7z 压缩文件:
使用 C# 为 7z 条目设置不同的密码
7z 格式还允许您为每个文件条目分配唯一的密码。如果您正在压缩多个文件,可以为每个文件指定不同的密码。以下是如何操作:
- 为 7z 压缩文件创建一个新的 FileStream。
- 使用 FileInfo 类访问每个文件条目。
- 创建 SevenZipArchive 类的实例。
- 使用 SevenZipArchive.CreateEntry(String, FileInfo, Boolean, SevenZipEntrySettings) 方法将条目添加到 7z 压缩文件中。
- 使用 SevenZipArchive.Save(Stream) 方法保存压缩文件。
查看以下代码示例,了解如何为 7z 压缩文件中的每个条目设置不同的密码:
结论
在本文中,我们探讨了如何 使用 C# 程序化创建 7z 压缩文件。我们还讨论了如何实现 AES 加密 以增强安全性,以及如何为每个文件条目设置唯一的密码。有关文件压缩和解压缩的进一步阅读,您可以查看 Aspose.ZIP 文档。
相关文章
通过利用 Aspose 插件,您可以轻松将 .NET 7-Zip 压缩 集成到您的应用程序中,简化文件管理流程,并增强软件功能。仅需 99 美元,即可解锁支持大文件处理、异步压缩等强大功能。