跳至頁尾內容
USING IRONZIP

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

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()方法獲取ZIP檔案的所有條目。

什麼是 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 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 Module
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 Module
VB .NET

我們使用了IronZipArchive方法,該方法將ZIP歸檔中的所有條目提取到指定目錄。 它向方法傳遞兩個參數:ZIP文件的路徑("D:\Docs.zip")和目標目錄的路徑("D:\ExtractedFiles")。 如果不同的目錄未指定,則會將文件解壓到預設的程式資料夾中。

輸出

Figure 1 - 在預設文件夾中提取ZIP檔案的輸出

同樣,我們也可以提取TarGZipBZip2文件。

從密碼保護的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 Module
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 Module
VB .NET

上述VB.NET程式碼使用IronZIP程式庫從密碼保護的ZIP歸檔中提取項目。它調用IronZipArchive方法,該方法將ZIP歸檔中的所有條目提取到指定目錄。 它向方法傳遞三個參數:ZIP文件的完整路徑("PasswordProtectedZip.zip")、目標目錄的路徑("extractedDocs")和ZIP文件的密碼("myPassw0rd")。

IronZIP支持AES-128、AES-256和傳統加密算法。 如果密碼不正確或ZIP文件未加密,該方法將拋出異常。 提取出的文件如下:

Figure 2 - 密碼保護提取檔案的輸出

查看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 Sub
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 Sub
VB .NET

上述Visual Basic .NET程式碼片段使用IronZIP程式庫提取ZIP檔案中的條目名稱。程式碼執行以下操作:

  • 它建立IronZipArchive類的新實例,並將ZIP文件的路徑("D:\Docs.zip")作為參數傳遞。 這會打開ZIP文件並將其內容載入到記憶體中。 該實例被分配給一個名為Using語句中,這確保了當程式碼塊結束時ZIP文件被關閉和處理。

  • 它調用names的變數。

  • 它使用Console.WriteLine方法將每個名稱列印到控制台。 這會顯示ZIP歸檔中文件和文件夾的名稱。

Figure 3 - 前一個程式碼範例的輸出

結論

總之,IronZIP在VB.NET中成為一種強大的工具,它提供了豐富的功能集來進行壓縮提取操作。 它的多功能性超越了基本功能,允許開發者無縫整合如密碼保護、加密和高效文件管理等功能。 通過探索所提供的範例,您可以在您的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套件管理器控制台安裝IronZIP到您的VB.NET專案,指令如下:Install-Package IronZIP

IronZIP能否從不同來源提取文件到VB.NET中?

是的,IronZIP可以從多種來源提取文件,包括本地文件、流或URL,提供在VB.NET專案中的多樣化提取能力。

Curtis Chau
技術作家

Curtis Chau擁有Carleton大學的電腦科學學士學位,專精於前端開發,擁有Node.js、TypeScript、JavaScript和React的專業知識。Curtis熱衷於建立直觀且美觀的使用者介面,喜愛使用現代框架並建立結構良好、視覺吸引力的手冊。

除了開發,Curtis對物聯網(IoT)有濃厚的興趣,探索創新的方法來整合硬體和軟體。在空閒時間,他喜歡玩遊戲和建立Discord機器人,結合他對技術的熱愛與創造力。

Iron 支援團隊

我們線上24小時,每週5天。
聊天
電子郵件
給我打電話