使用IRONZIP

如何在VB .NET中提取Zip文件

查克尼特·宾
查克尼特·宾
2024年二月18日
分享:

Zip 文件是将多个文件压缩打包成一个归档文件的常用方法。处理 ZIP 压缩文件等压缩文件是软件开发中的一项常见任务。 在 VB.NET 中,开发人员经常需要一种可靠、高效的方法来从 ZIP 文件中提取数据。 简化此过程的一个强大库是IronZIP。 在本文中,我们将探讨如何使用 IronZIP 在 VB.NET 中提取 ZIP 文件。

如何在 VB.NET 中提取 Zip 文件

  1. 安装 IronZIP 库。

  2. 使用IronZipArchive.ExtractArchiveToDirectory()方法来提取zip文件。

  3. 使用IronZipArchive.ExtractArchiveToDirectory()方法提取受密码保护的zip文件。

  4. 使用GetArchiveEntryNames()方法获取压缩文件的所有条目。

什么是IronZIP?

IronZIP,一组用于各种开发需求的.NET软件组件。 IronZIP 因其易用性、性能以及支持多种压缩和解压缩功能而脱颖而出。

IronZIP 的使用案例

IronZIP 的一些使用案例如下:

  1. 文件压缩:您可以使用 IronZIP 减少文件大小,以节省磁盘空间或带宽。

  2. 文件分发:您可以使用 IronZIP 将多个文件打包成一个单一的存档,从而更轻松地共享或传输它们。

  3. 文件加密:您可以使用IronZIP通过密码和权限保护您的文件,防止未经授权的访问或修改。

  4. 文件提取:您可以使用IronZIP打开和读取来自各种来源的ZIP文件,如本地文件、流或URL,并提取内容或元数据。

  5. 文件管理:您可以使用IronZIP操作ZIP文件,例如添加、删除或合并条目、更改压缩格式,或验证档案的完整性。

开始使用 IronZIP

要开始在您的 VB.NET 项目中使用 IronZIP,我们需要安装 IronZIP 库。 我们可以通过使用 NuGet 包管理器控制台或 Visual Studio 的 NuGet 包管理器来轻松完成这项工作。

安装 IronZIP NuGet 软件包

在 NuGet 包管理器控制台中编写以下命令。

Install-Package IronZip

按 Enter 键执行命令。 NuGet 将下载并安装 IronZIP 软件包及其依赖项。 您将在控制台中看到显示安装进度的输出。

VB.NET 解压缩文件

现在,让我们探索一种使用 IronZIP 解压缩 ZIP 文件的简单方法:

Imports IronZip
Module Program
    Sub Main(args As String())
       Dim extractpath = "D:\ExtractedFiles"
Dim zippath = "D:\Docs.zip"
IronZipArchive.ExtractArchiveToDirectory(zippath, extractpath)
    End Sub
End Module
Imports IronZip
Module Program
    Sub Main(args As String())
       Dim extractpath = "D:\ExtractedFiles"
Dim zippath = "D:\Docs.zip"
IronZipArchive.ExtractArchiveToDirectory(zippath, extractpath)
    End Sub
End Module
VB.NET

我们使用了IronZipArchive类的ExtractArchiveToDirectory方法,该方法将ZIP归档中的所有条目提取到指定的目录中。 它向方法传递了两个参数:ZIP 文件的路径(“D:\Docs.zip”)和目标目录的路径(“extracted”)。 由于我们没有指定任何目录,因此将在默认程序文件夹中提取文件。

输出

如何在 VB .NET 中提取 Zip 文件:图 1 - 在默认文件夹中提取文件的输出

同样,我们也可以提取TarGZipBZip2文件。

从受密码保护的 ZIP 压缩文件中提取所有文件

要使用 VB.NET 中的 IronZIP for .NET 从受密码保护的 ZIP 压缩包中提取所有文件,我们可以使用以下代码片段。

Imports IronZip
Imports System
Module Program
    Sub Main(args As String())
        IronZipArchive.ExtractArchiveToDirectory("PasswordProtectedZip.zip", "extractedDocs", "myPassw0rd")
    End Sub
End Module
Imports IronZip
Imports System
Module Program
    Sub Main(args As String())
        IronZipArchive.ExtractArchiveToDirectory("PasswordProtectedZip.zip", "extractedDocs", "myPassw0rd")
    End Sub
End Module
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'@Imports IronZip @Imports System Module Program @Sub Main(args @As String()) IronZipArchive.ExtractArchiveToDirectory("PasswordProtectedZip.zip", "extractedDocs", "myPassw0rd") @End @Sub @End Module
$vbLabelText   $csharpLabel

上面的 VB.NET 代码使用 IronZIP 库来提取受密码保护的 ZIP 存档中的项目。它调用了 IronZipArchive 类的 ExtractArchiveToDirectory 方法,该方法将 ZIP 存档中的所有条目提取到指定目录。 它向方法传递三个参数:ZIP 文件的完整路径(“PasswordProtectedZip.zip”)、目标目录的路径(“extractedDocs”)和 ZIP 文件的密码(“myPassw0rd”)。

IronZIP 支持 AES-128、AES-256 和传统加密算法。 如果密码不正确或 ZIP 文件未加密,该方法将产生异常。 提取的文件有

如何在 VB .NET 中解压 Zip 文件:图 2 - 解压缩后的密码保护文件输出

查看 ZIP 文件的条目

我们可以通过 IronZIP 轻松查看压缩文件的条目。以下代码将打开 ZIP 文件并在控制台中显示其条目。

Sub Main(args As String())
    Dim startpath = "D:\Docs.zip"
    Using archive = New IronZipArchive(startPath)
        Dim names As List(Of String) = archive.GetArchiveEntryNames()
        For Each name As String In names
            Console.WriteLine(name)
        Next name
    End Using
End Sub
Sub Main(args As String())
    Dim startpath = "D:\Docs.zip"
    Using archive = New IronZipArchive(startPath)
        Dim names As List(Of String) = archive.GetArchiveEntryNames()
        For Each name As String In names
            Console.WriteLine(name)
        Next name
    End Using
End Sub
VB.NET

上述 Visual Basic .NET 代码片段使用 IronZIP 库提取 ZIP 压缩包中的条目名称。代码的功能如下:

它创建了一个新的 IronZipArchive 类实例,将 ZIP 文件的路径(“D:\Docs.zip”)作为参数传递。 我们可以在参数中传递具体的文件名。 这将打开 ZIP 文件并将其内容加载到内存中。 实例被分配给一个名为 archive 的变量,并封装在 Using 语句中,以确保代码块结束时 ZIP 文件被关闭和处理。

它调用了存档对象的GetArchiveEntryNames方法,该方法返回一个包含ZIP存档中所有条目名称的字符串列表。该列表被分配给一个名为names的变量。 它使用 For Each 循环遍历 names 列表,并使用 Console.WriteLine 方法将每个名称打印到控制台。 这将显示 ZIP 压缩包中文件系统和文件夹的名称。

如何在VB .NET中解压Zip文件:图3 - 上一个代码示例的输出

结论

总之,IronZIP 作为处理 VB.NET 中 ZIP 压缩档的强大工具出现,提供用于压缩提取操作的丰富功能集。 其多功能性超越了基本功能,允许开发人员无缝集成密码保护、加密和高效文件管理等功能。 通过探索所提供的示例,您可以在 VB.NET 项目中充分释放 IronZIP 的潜力。

如图所示,该库简化了提取过程,使开发人员能够轻松处理受密码保护的 ZIP 存档、查看文件条目并轻松执行各种操作。 此外,IronZIP 与一系列压缩格式的兼容性和跨平台支持使其成为在不同环境中工作的开发人员的宝贵资产。 IronZIP 提供一个免费试用选项,完美符合他们的要求。

查克尼特·宾
软件工程师
Chaknith 负责 IronXL 和 IronBarcode 的工作。他在 C# 和 .NET 方面拥有深厚的专业知识,帮助改进软件并支持客户。他从用户互动中获得的洞察力,有助于提升产品、文档和整体体验。
< 前一页
如何使用C#压缩文件夹中的文件
下一步 >
如何使用密码在C#中压缩文件

准备开始了吗? 版本: 2025.4 刚刚发布

查看许可证 >