如何在 VB .NET 中提取 ZIP 文件
压缩文件是一种流行的压缩和打包多个文件成单个存档的方式。处理压缩文件,如 ZIP 存档,是软件开发中常见的任务。 在 VB.NET 中,开发人员通常需要一种可靠且高效的方式从 ZIP 文件中提取数据。 一个简化此过程的强大库是IronZIP。 在本文中,我们将探讨使用 IronZIP 在 VB.NET 中提取 ZIP 文件。
如何在 VB.NET 中提取 Zip 文件
- 安装 IronZIP 库。
- 使用
IronZipArchive.ExtractArchiveToDirectory()方法提取 ZIP 文件。 - 使用
IronZipArchive.ExtractArchiveToDirectory()方法提取受密码保护的 ZIP 文件。 - 使用
GetArchiveEntryNames()方法获取 ZIP 文件的所有条目。
什么是 IronZIP?
IronZIP,是用于各种开发需求的 .NET 软件组件集。 IronZIP 因其易用性、性能和支持广泛的压缩和解压功能而脱颖而出。
IronZIP 的使用案例
IronZIP 的一些使用案例是:
- 文件压缩:您可以使用 IronZIP 减少文件大小,节省磁盘空间或带宽。
- 文件分发:您可以使用 IronZIP 将多个文件捆绑成一个存档,便于共享或传输。
- 文件加密:您可以使用 IronZIP 用密码和权限保护文件,防止未经授权的访问或修改。
- 文件提取:您可以使用 IronZIP 从各种来源打开和读取 ZIP 文件,如本地文件、流或 URL,并提取内容或元数据。
- 文件管理:您可以使用 IronZIP 操作 ZIP 文件,如添加、删除或合并条目、更改压缩格式或验证存档的完整性。
IronZIP 入门
要在您的 VB.NET 项目中开始使用 IronZIP,我们需要安装 IronZIP 库。 我们可以通过使用 NuGet Package Manager Console 或 Visual Studio 的 NuGet Package Manager 来轻松完成此操作。
安装 IronZIP NuGet 包
在 NuGet Package Manager Console 中写入以下命令:
Install-Package IronZip
按 Enter 执行命令。 NuGet 将下载并安装 IronZIP 包及其依赖项。 您将在控制台中看到指示安装进度的输出。
VB.NET 提取 Zip 文件
现在,让我们探索一种使用 IronZIP 提取 ZIP 文件的简单方法:
Imports IronZip
Module Program
Sub Main(args As String())
' Set paths for the ZIP file and the extraction directory
Dim extractPath As String = "D:\ExtractedFiles"
Dim zipPath As String = "D:\Docs.zip"
' Extract the ZIP file to the specified directory
IronZipArchive.ExtractArchiveToDirectory(zipPath, extractPath)
End Sub
End ModuleImports IronZip
Module Program
Sub Main(args As String())
' Set paths for the ZIP file and the extraction directory
Dim extractPath As String = "D:\ExtractedFiles"
Dim zipPath As String = "D:\Docs.zip"
' Extract the ZIP file to the specified directory
IronZipArchive.ExtractArchiveToDirectory(zipPath, extractPath)
End Sub
End Module我们使用了 IronZipArchive 类的 ExtractArchiveToDirectory 方法,该方法将 ZIP 存档中的所有条目提取到指定目录。 它向方法传递两个参数:ZIP 文件的路径("D:\Docs.zip")和目标目录的路径("D:\ExtractedFiles")。 如果未指定不同的目录,它将提取文件到默认程序文件夹中。
输出

提取受密码保护的 ZIP 存档中的所有文件
要使用 IronZIP 在 VB.NET 中提取受密码保护的 ZIP 存档中的所有文件,我们可以使用以下代码片段:
Imports IronZip
Module Program
Sub Main(args As String())
' Extract password-protected ZIP archive using a password
IronZipArchive.ExtractArchiveToDirectory("PasswordProtectedZip.zip", "extractedDocs", "myPassw0rd")
End Sub
End ModuleImports IronZip
Module Program
Sub Main(args As String())
' Extract password-protected ZIP archive using a password
IronZipArchive.ExtractArchiveToDirectory("PasswordProtectedZip.zip", "extractedDocs", "myPassw0rd")
End Sub
End Module上述 VB.NET 代码使用 IronZIP 库提取受密码保护的 ZIP 存档的项目。它调用 IronZipArchive 类的 ExtractArchiveToDirectory 方法,该方法将 ZIP 存档中的所有条目提取到指定目录。 它向方法传递三个参数:ZIP 文件的完整路径("PasswordProtectedZip.zip")、目标目录的路径("extractedDocs")和 ZIP 文件的密码("myPassw0rd")。
IronZIP 支持 AES-128、AES-256 和传统加密算法。 如果密码不正确或 ZIP 文件未加密,方法将抛出异常。 提取的文件是:

查看 ZIP 文件的条目
我们可以通过使用 IronZIP 轻松查看压缩文件的条目。以下代码打开 ZIP 文件,并在控制台上显示其条目:
Imports IronZip
Sub Main(args As String())
' Specify the ZIP file path
Dim startPath As String = "D:\Docs.zip"
' Open the ZIP archive and list entry names
Using archive As New IronZipArchive(startPath)
Dim names As List(Of String) = archive.GetArchiveEntryNames()
' Print each entry name to the console
For Each name As String In names
Console.WriteLine(name)
Next name
End Using
End SubImports IronZip
Sub Main(args As String())
' Specify the ZIP file path
Dim startPath As String = "D:\Docs.zip"
' Open the ZIP archive and list entry names
Using archive As New IronZipArchive(startPath)
Dim names As List(Of String) = archive.GetArchiveEntryNames()
' Print each entry name to the console
For Each name As String In names
Console.WriteLine(name)
Next name
End Using
End Sub上述 Visual Basic .NET 代码片段使用 IronZIP 库提取 ZIP 存档中条目的名称。代码执行以下操作:
它创建一个
IronZipArchive类的新实例,将 ZIP 文件的路径("D:\Docs.zip")作为参数传递。 这将打开 ZIP 文件并将其内容加载到内存中。 该实例被分配给一个名为archive的变量,并使用Using语句包裹,这确保 ZIP 文件在代码块结束时关闭并释放。它调用
archive对象的GetArchiveEntryNames方法,该方法返回一个字符串列表,包含 ZIP 存档中所有条目的名称。列表被分配给一个名为names的变量。- 它使用
For Each循环遍历names列表,并使用Console.WriteLine方法将每个名称打印到控制台。 这将显示 ZIP 存档中的文件和文件夹名称。

结论
总之,IronZIP 作为在 VB.NET 中处理 ZIP 存档的强大工具出现,提供了一套丰富的功能用于压缩、解压和操作。 它的多功能性超越了基础功能,允许开发人员无缝集成如密码保护、加密和高效文件管理等功能。 通过探索所提供的示例,您可以在 VB.NET 项目中充分发挥 IronZIP 的潜力。
如所示,库简化了提取过程,使开发人员能够轻松处理受密码保护的 ZIP 存档、查看文件条目以及执行各种操作。 此外,IronZIP 对多种压缩格式的兼容性及其在多个平台上的支持,使其成为在多样环境中工作的开发人员的宝贵资产。 IronZIP 提供 免费试用选项,完全符合他们的需求。
常见问题解答
如何在 VB.NET 中提取 ZIP 文件?
您可以使用 IronZIP 的 ExtractArchiveToDirectory() 方法在 VB.NET 中提取 ZIP 文件。此方法允许您指定 ZIP 文件路径和文件将被提取到的目标目录。
IronZIP 能处理受密码保护的 ZIP 文件吗?
是的,IronZIP 可以处理受密码保护的 ZIP 文件。您可以使用 ExtractArchiveToDirectory() 方法并提供密码参数来成功提取这些文件。
我可以使用什么方法在 VB.NET 中列出 ZIP 文件的条目?
您可以使用 IronZIP 的 GetArchiveEntryNames() 方法列出 ZIP 文件中的所有条目。此方法返回一个条目名称列表,您可以打印或记录以供参考。
使用 IronZIP 管理 ZIP 文件有哪些好处?
IronZIP 提供易用性、高性能和广泛的压缩和解压缩功能。它支持文件压缩以节省空间,通过打包文件进行分发,加密以实现安全,以及文件管理操作,如在 ZIP 文件中添加或删除条目。
IronZIP 支持不同的加密算法吗?
是的,IronZIP 支持多种加密算法,包括 AES-128、AES-256 和传统加密算法,确保安全处理 ZIP 存档中的文件。
IronZIP 为开发人员提供试用版本吗?
是的,IronZIP 提供一个免费试用版,允许开发人员在做出购买决定之前探索其功能和能力。
IronZIP 能处理不同的压缩格式吗?
是的,IronZIP 支持多种压缩格式,如 ZIP、Tar、GZip 和 BZip2,提供灵活性以满足各种文件管理需求。
如何在 VB.NET 项目中安装 IronZIP?
您可以使用 NuGet 包管理器控制台在您的 VB.NET 项目中安装 IronZIP,命令为:Install-Package IronZIP。
IronZIP 能在 VB.NET 中从不同来源提取文件吗?
是的,IronZIP 可以从各种来源提取文件,包括本地文件、流或 URL,提供在 VB.NET 项目中多功能的提取能力。








