使用 IRONZIP

如何在 VB .NET 中解壓縮 Zip 文件

發佈 2024年2月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 從各種來源(如本地文件、流或 URL)打開和讀取 ZIP 文件,並提取內容或元數據。

  5. 文件管理: 您可以使用IronZIP來操作ZIP文件,例如添加、刪除或合併條目、更改壓縮格式或驗證存檔的完整性。

開始使用 IronZIP

要在您的 VB.NET 專案中開始使用 IronZIP,我們需要安裝 IronZIP 函式庫。 我們可以輕鬆地使用 NuGet 套件管理器主控台或 Visual Studio 的 NuGet 套件管理器來完成此操作。

安裝 IronZIP NuGet 套件

在 NuGet 套件管理器主控台中輸入以下命令。

Install-Package IronZip

按下 Enter 鍵以執行命令。 NuGet 會下載並安裝 IronZIP 套件及其相依性。 您將會在控制台中看到顯示安裝進度的輸出。

VB.NET 提取 Zip 檔案

現在,讓我們探討使用 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”)及目的地目錄的路徑("提取"). 由於我們未指定任何目錄,因此它將在預設的程式資料夾中解壓縮文件。

輸出

如何在 VB .NET 中解壓 Zip 文件:圖 1 - 在默認資料夾中解壓文件的輸出

同樣地,我們也可以提取Tar, GZip,和BZip2檔案。

從受密碼保護的 ZIP 壓縮檔案中提取所有檔案

若要使用 IronZIP 在 VB.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 迴圈遍歷名稱列表,並使用 Console.WriteLine 方法將每個名稱打印到控制台。 這將顯示ZIP壓縮檔中的檔案系統和文件夾名稱。

如何在 VB .NET 中解壓縮 Zip 檔案: 圖 3 - 前述代碼範例的輸出結果

結論

總結來說,IronZIP 成為 VB.NET 中處理 ZIP 壓縮檔案的強大工具,提供豐富的功能來 壓縮, 提取,和操作. 它的多功能性不僅限於基礎功能,還允許開發人員無縫整合密碼保護、加密和高效文件管理等功能。 透過探索提供的範例,您可以在 VB.NET 專案中充分發揮 IronZIP 的潛力。

如示範,該庫簡化了提取過程,使開發者能夠輕鬆處理受密碼保護的 ZIP 壓縮檔案,查看檔案條目,並輕鬆執行各種操作。 此外,IronZIP 對多種壓縮格式的相容性以及跨多平台的支援,使其成為在各種環境中工作的開發者的一個有價值的資產。 IronZIP 提供一個免費試用選項完全符合他們的需求。

Kannaopat Udonpant

坎納帕特·烏頓潘

軟體工程師

 LinkedIn

在成為軟體工程師之前,Kannapat 在日本北海道大學完成了環境資源博士學位。在攻讀學位期間,Kannapat 也成為了車輛機器人實驗室的成員,該實驗室隸屬於生物生產工程學系。2022 年,他利用自己的 C# 技能,加入了 Iron Software 的工程團隊,專注於 IronPDF 的開發。Kannapat 珍視這份工作,因為他可以直接向負責撰寫大部分 IronPDF 程式碼的開發人員學習。除了同儕學習外,Kannapat 還享受在 Iron Software 工作的社交方面。當他不在撰寫程式碼或文件時,Kannapat 通常會在 PS5 上玩遊戲或重看《最後生還者》。
< 上一頁
如何使用 C# 壓縮資料夾中的檔案
下一個 >
如何在C#中使用密碼壓縮文件