在生产环境中测试,无水印。
随时随地满足您的需求。
获得30天的全功能产品。
几分钟内就能启动并运行。
在您的产品试用期间,全面访问我们的支持工程团队。
ZIP 文件是指使用 ZIP 格式,包含一个或多个压缩文件或文件夹的文件。 这是一种将多个文件或文件夹压缩和归档为单个文件的常用方法。它们可以减小数据大小、节省磁盘空间,并使通过互联网传输文件变得更加容易。 在本文中,您将学习如何使用ZIP文件与C#,使用IronZIP库。 您将看到如何以编程方式创建、读取、提取和更新 ZIP 文件,以及如何使用 IronZIP 的各种功能,如加密、密码保护和压缩级别。 本文结束时,您将能在 C# 应用程序中使用 IronZIP 轻松处理 ZIP 文件。
在我们的项目中安装 IronZIP
创建 ZIP 文件
创建受密码保护的 ZIP 文件
提取 ZIP 文件
提取受密码保护的 ZIP 文件
IronZIP 是一个功能强大且多用途的C# ZIP档案库,允许您以编程方式创建、读取和提取ZIP文件。 它支持多种存档格式,如ZIP、TAR、GZIP和BZIP2。 它还支持密码保护、加密和压缩级别。 IronZIP 兼容 .NET 8、7、6、Core、Standard 和 Framework。
IronZIP 可以帮助您处理与 ZIP 文件打交道的各种用例和优势,例如:
创建备份系统:您可以使用IronZIP将重要文件和文件夹压缩加密成ZIP档案,并将其存储在安全位置。 这样,您就可以节省磁盘空间,保护数据免遭未经授权的访问。
发送电子邮件附件:您可以使用IronZIP将电子邮件附件压缩成ZIP文件以减小其大小。这可以帮助您避免超过文件大小限制并加速传输过程。
在编写代码之前,您需要安装 IronZIP NuGet Package 我们的 C# 项目。 IronZIP 是一个流行的压缩库,可通过 NuGet 获取。
要安装 IronZIP,可以使用 Visual Studio 中的 NuGet 包管理器控制台。 只需运行以下命令:
Install-Package IronZip
或者,您可以直接从官方IronZIP网站下载该软件包。安装后,您可以通过在C#代码顶部添加以下命名空间来开始。
using IronZip;
using IronZip;
Imports IronZip
我们可以使用 IronZIP 在文件夹中轻松创建 ZIP 文件。以下代码将压缩指定目录中的所有文件。
static void Main(string [] args)
{
string [] fileArray = Directory.GetFiles(@"D:\Docs\");
using (var archive = new IronZipArchive())
{
foreach (var file in fileArray)
{
// Add files to the ZIP
archive.Add(file);
}
// Export the ZIP
archive.SaveAs("myZipFile.zip");
}
}
static void Main(string [] args)
{
string [] fileArray = Directory.GetFiles(@"D:\Docs\");
using (var archive = new IronZipArchive())
{
foreach (var file in fileArray)
{
// Add files to the ZIP
archive.Add(file);
}
// Export the ZIP
archive.SaveAs("myZipFile.zip");
}
}
Shared Sub Main(ByVal args() As String)
Dim fileArray() As String = Directory.GetFiles("D:\Docs\")
Using archive = New IronZipArchive()
For Each file In fileArray
' Add files to the ZIP
archive.Add(file)
Next file
' Export the ZIP
archive.SaveAs("myZipFile.zip")
End Using
End Sub
上述 C# 代码使用 IronZIP 库将所有文件压缩成一个 ZIP 文件。代码的功能如下:
最后,我们调用了存档对象的 SaveAs 方法,将 ZIP 文件的名称(“myZipFile.zip”)作为参数传递。 此方法可将 ZIP 压缩包保存到当前文件系统中的文件。
这样,我们只需几行代码就能轻松创建新的 zip 压缩包。
输出为
IronZIP 提供了创建受密码保护的 ZIP 文件的最简单方法。 以下代码示例将压缩文件并创建一个带有密码的新 ZIP 文件。
using (var archive = new IronZipArchive())
{
foreach (var file in fileArray)
{
// Add files to the ZIP
archive.Add(file);
}
// Set Password and Encryption Method
archive.Encrypt("myPa55word", EncryptionMethods.AES256);
// Export the ZIP
archive.SaveAs("myZipFile.zip");
}
using (var archive = new IronZipArchive())
{
foreach (var file in fileArray)
{
// Add files to the ZIP
archive.Add(file);
}
// Set Password and Encryption Method
archive.Encrypt("myPa55word", EncryptionMethods.AES256);
// Export the ZIP
archive.SaveAs("myZipFile.zip");
}
Using archive = New IronZipArchive()
For Each file In fileArray
' Add files to the ZIP
archive.Add(file)
Next file
' Set Password and Encryption Method
archive.Encrypt("myPa55word", EncryptionMethods.AES256)
' Export the ZIP
archive.SaveAs("myZipFile.zip")
End Using
archive.Encrypt("myPa55word", EncryptionMethods.AES256); 使用IronZIP为ZIP存档设置密码("myPa55word")。通过对存档应用AES-256加密来增强安全性,确保只有具有正确密码的用户才能访问其内容。 该功能对于保护 C# 应用程序中存储或传输过程中的敏感数据非常有价值。 我们需要在第二个参数中传递指定的加密算法模式。
文件已加密,如下所示。
我们已经看到了通过循环指定路径下的目录来创建 ZIP 文件的演示。 现在,让我们以解压文件为例。
IronZIP 提供了一种从 ZIP 压缩包 C# 中提取文件的方法。 以下代码示例将提取 ZIP 压缩包中的压缩文件。
IronZipArchive.ExtractArchiveToDirectory("myZipFile.zip", "myExtractedFiles");
IronZipArchive.ExtractArchiveToDirectory("myZipFile.zip", "myExtractedFiles");
IronZipArchive.ExtractArchiveToDirectory("myZipFile.zip", "myExtractedFiles")
IronZipArchive.ExtractArchiveToDirectory("myZipFile.zip", "myExtractedFiles"); 使用 IronZIP 从 "myZipFile.zip "中提取所有文件,并将它们放入 "myExtractedFiles "目录。 这种简明的方法简化了用 C# 提取 ZIP 压缩包的过程,为文件提取任务提供了便捷的解决方案。
输出如下
IronZIP 还提供了一种提取受密码保护的 ZIP 文件的方法。 以下代码将使用 IronZIP 方法从指定的 ZIP 文件中提取所有现有文件和目录。
IronZipArchive.ExtractArchiveToDirectory("myZipFile.zip", "myExtractedFiles", "myPa55word");
IronZipArchive.ExtractArchiveToDirectory("myZipFile.zip", "myExtractedFiles", "myPa55word");
IronZipArchive.ExtractArchiveToDirectory("myZipFile.zip", "myExtractedFiles", "myPa55word")
IronZipArchive 类的 ExtractArchiveToDirectory 方法可将 ZIP 压缩包中的所有条目提取到指定目录。 它向方法传递三个参数:ZIP文件的路径(“myZipFile.zip”)、目标目录的路径(“myExtractedFiles”)以及ZIP文件的密码(“myPa55word”)。
通过这种方式,我们可以轻松提取受密码保护的压缩文件。
IronZIP提供的方法可以访问现有的存档并查看文件中存在的所有条目。
using (var archive = new IronZipArchive("myZipFile.zip", "myPa55word"))
{
// Get Entries list
List<string> names = archive.GetArchiveEntryNames();
foreach (string name in names)
{
Console.WriteLine(name);
}
}
using (var archive = new IronZipArchive("myZipFile.zip", "myPa55word"))
{
// Get Entries list
List<string> names = archive.GetArchiveEntryNames();
foreach (string name in names)
{
Console.WriteLine(name);
}
}
Using archive = New IronZipArchive("myZipFile.zip", "myPa55word")
' Get Entries list
Dim names As List(Of String) = archive.GetArchiveEntryNames()
For Each name As String In names
Console.WriteLine(name)
Next name
End Using
所提供的 C# 代码使用 IronZIP 通过加载名为 "myZipFile.zip"、密码为 "myPa55word "的 ZIP 文件来创建安全的 IronZipArchive 实例。 如果文件未加密,请勿传递密码参数。 然后,它检索并打印加密ZIP归档内的条目名称(文件和文件夹名称)列表。
GetArchiveEntryNames 方法收集条目名称,然后通过 for-each 循环将每个名称输出到控制台。 这展示了 IronZIP 如何以简洁的方式实现安全访问和检索受密码保护的 zip 存档中的条目信息。
总之,IronZIP 被证明是一个用于处理 ZIP 文件的强大而通用的 C# 库。 其功能不仅限于基本的压缩和解压,还提供密码保护、加密及与多种归档格式的兼容性。 无论您是创建备份系统、管理电子邮件附件,还是从网上下载文件,IronZIP 都能简单高效地简化这些任务。
通过将 IronZIP 集成到您的 C# 应用程序中,您将获得一个强大的工具来处理 ZIP 文件、增强数据安全性并优化文件传输过程。 您可以根据需要享受免费试用。