使用 IRONZIP

如何在 C# 中解壓縮文件到目錄

發佈 2024年3月6日
分享:

解壓縮文件 在軟體開發中,以程式化方式操作是一項常見的任務,尤其是處理壓縮檔案時。本文將探討如何從ZIP壓縮檔案中提取檔案 C# 使用該 IronZIP 圖書館。

無論您是在針對 Windows 應用程序還是 .NET 專案工作,瞭解解壓縮文件的過程都是無價的。讓我們深入學習如何在您的 C# 代碼庫中高效處理 ZIP 文件。

本文將解釋:

  1. 安裝 IronZIP Library 的過程

  2. 如何提取 ZIP 壓縮檔案

  3. 如何提取受密碼保護的 ZIP 壓縮檔案

  4. 如何創建 ZIP 文件

  5. 如何創建受密碼保護的 ZIP 文件

為什麼要解壓文件?

ZIP 文件,也稱為 ZIP 壓縮檔,是將多個文件打包成單一壓縮容器。解壓這些文件涉及提取壓縮數據並將其恢復到原始狀態。當您需要在 C# 應用程序中訪問或操作數據時,此過程非常重要。IronZIP 通過提供簡單的方法來管理壓縮數據,簡化了這項任務。

什麼是 IronZIP?

IronZIP 是一個強大的C# ZIP壓縮檔案庫,可促進 創建, 閱讀,和 提取 在 .NET 應用程式中管理壓縮檔案。無論您需要壓縮檔案、從現有檔案中擷取資料,還是管理您的ZIP檔案,IronZIP提供了一個使用者友好的API,能有效地完成這些任務。IronZIP簡化了在 .NET 應用程式中處理ZIP檔案的工作。

IronZIP 支援多種壓縮格式,包括ZIP、TAR、GZIP,以及BZIP2。IronZIP是跨平台的,兼容 .NET Core、.NET Standard 和 .NET Framework。並且提供了進階功能如 受密碼保護的檔案, 可自定壓縮級別和文件條目管理。

如何在C#中解壓縮檔案到目錄

現在,我將討論一些在C#中從ZIP文件中提取文件的範例。首先,在Visual Studio中創建一個新的C#項目。選擇適當的項目類型。 (例如,控制台應用程式、Windows Forms、ASP.NET Core 等。)接下來,我們需要安裝 IronZIP NuGet 套件.

通過 NuGet 套件管理器安裝 IronZIP

要安裝 IronZIP NuGet 套件,您可以在套件管理器控制台中使用以下命令:

Install-Package IronZip

或者,您可以使用 Visual Studio 中的封裝管理員 UI 來搜尋並安裝 IronZIP 封裝。

在您的 C# 代碼中,引入 IronZIP 命名空間以訪問其類別和方法。

using IronZip;
using IronZip;
Imports IronZip
VB   C#

用於在C#中解壓縮ZIP文件的代碼示例

以下代碼將解壓縮文件到指定位於C#的目錄。

IronZipArchive.ExtractArchiveToDirectory(@"E:\Images.zip", "Extracted Images");
IronZipArchive.ExtractArchiveToDirectory(@"E:\Images.zip", "Extracted Images");
IronZipArchive.ExtractArchiveToDirectory("E:\Images.zip", "Extracted Images")
VB   C#

上面的程式碼讀取指定的 ZIP 檔案 ("E:\Images.zip"),解壓縮其內容,並將提取的文件放置到名為「Extracted Images」的目錄中。說明如下:

說明

IronZipArchive 是 IronZIP 庫提供的類別。它是處理 ZIP 壓縮檔案在你的 C# 程式碼中的主要入口。ExtractArchiveToDirectory(...) 是一種方法 (或函數) IronZipArchive 類別提供。它允許您解壓縮 ZIP 檔案的內容 (在這種情況下,檔案 "E:\Images.zip") 到指定的目錄 (在這種情況下,名為 "Extracted Images" 的目錄)方法需要兩個參數:第一個參數 (@"E:\Images.zip") 是您要解壓縮的ZIP檔案路徑。第二個參數 (提取的圖像) 是您希望從 ZIP 壓縮檔案中解壓縮檔案的目錄。

解壓縮後的文件系統如下:

輸出:

如何在 C# 中解壓縮文件到目錄:圖 1 - 解壓縮後的檔案在 Extracted Images 目錄中

如何解壓縮受密碼保護的 ZIP 檔案

IronZIP 提供最簡單的方法來解壓縮 加密ZIP 檔案。以下程式碼展示了如何從受密碼保護的壓縮檔案中提取所有檔案的範例。

IronZipArchive.ExtractArchiveToDirectory(@"EncryptedImages.zip", "ExtractedImages", "zipP@55w0rd");
IronZipArchive.ExtractArchiveToDirectory(@"EncryptedImages.zip", "ExtractedImages", "zipP@55w0rd");
IronZipArchive.ExtractArchiveToDirectory("EncryptedImages.zip", "ExtractedImages", "zipP@55w0rd")
VB   C#

上述程式碼使用 IronZIP 將 "EncryptedImages.zip" 壓縮檔的內容解壓縮到 "ExtractedImages" 目錄。它還指定了解密所需的密碼 "zipP@55w0rd",這表明該 ZIP 檔案是加密的,需要提供的密碼才能進行解壓縮。它將覆蓋現有的文件。

如何在 C# 中解壓縮文件到目錄:圖 2 - 在解壓縮的 Images 目錄內的已解密文件

在C#中使用IronZIP,將檔案解壓縮到目錄需要充分利用IronZIP庫的功能。透過使用像IronZipArchive.ExtractArchiveToDirectory這樣的函數,開發人員可以輕鬆地提取壓縮檔案,提供了一種簡單的機制來處理本地文件頭。它為在應用程序中更新ZIP檔案和RAR檔案提供了一個高效的方式。

IronZIP還提供了在C#和.NET應用程序中建立ZIP檔案的方法。讓我們在C#中創建一個ZIP存檔。

如何建立 ZIP 檔案

以下的程式碼範例將建立一個 ZIP 檔案。

static void Main(string[] args)
{
    using (var archive = new IronZipArchive(9))
    {
        archive.Add(@"E:\Images\image1.png");
        archive.Add(@"E:\Images\image2.png");
        archive.Add(@"E:\Images\image3.png");
        archive.Add(@"E:\Images\image4.png");
        // Export the ZIP
        archive.SaveAs("MyImages.zip");
    }
}
static void Main(string[] args)
{
    using (var archive = new IronZipArchive(9))
    {
        archive.Add(@"E:\Images\image1.png");
        archive.Add(@"E:\Images\image2.png");
        archive.Add(@"E:\Images\image3.png");
        archive.Add(@"E:\Images\image4.png");
        // Export the ZIP
        archive.SaveAs("MyImages.zip");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

上面的程式碼展示了使用IronZIP創建新的ZIP存檔 (使用壓縮等級 9) 並添加多個條目,每個條目代表一個圖像文件 (image1.png, image2.png, image3.png, 和 image4.png) 從指定的文件路徑。

最後,使用 SaveAs 方法將創建的 ZIP 壓縮檔案導出為指定目錄中的 'MyImages.zip'。壓縮等級9表示最大壓縮,儘管潛在的處理時間較長,但可以產生較小的文件大小。

如何在 C# 中解壓縮檔案到目錄:圖 3 - 從前一段代碼生成的 ZIP 檔案

如何建立一個有密碼保護的 ZIP 檔案

以下代碼將建立一個有密碼保護的 zip 檔案。

using (var archive = new IronZipArchive(9))
    {
        // Password protect the ZIP (Support AES128 & AES256)
        archive.Encrypt("miPassw0rd", EncryptionMethods.AES256);
        archive.Add(@"E:\Images\image1.png");
        archive.Add(@"E:\Images\image2.png");
       // Export the ZIP
        archive.SaveAs("PasswordProtectedImages.zip");
    }
using (var archive = new IronZipArchive(9))
    {
        // Password protect the ZIP (Support AES128 & AES256)
        archive.Encrypt("miPassw0rd", EncryptionMethods.AES256);
        archive.Add(@"E:\Images\image1.png");
        archive.Add(@"E:\Images\image2.png");
       // Export the ZIP
        archive.SaveAs("PasswordProtectedImages.zip");
    }
Using archive = New IronZipArchive(9)
		' Password protect the ZIP (Support AES128 & AES256)
		archive.Encrypt("miPassw0rd", EncryptionMethods.AES256)
		archive.Add("E:\Images\image1.png")
		archive.Add("E:\Images\image2.png")
	   ' Export the ZIP
		archive.SaveAs("PasswordProtectedImages.zip")
End Using
VB   C#

上述代碼展示了使用IronZIP以指定的加密方法建立密碼保護的ZIP檔案。 (在這種情況下使用AES256). 密碼 "miPassw0rd" 被設置為保護 ZIP 文件。代碼然後添加了兩個圖像文件 (image1.png 和 image2.png) 從指定的檔案路徑添加到壓縮檔。

最後,使用 SaveAs 方法將密碼保護的 ZIP 壓縮檔匯出為「PasswordProtectedImages.zip」。 這確保內容的安全性,使用指定的密碼和加密方法。IronZIP 支援 AES128、AES256 和傳統方法。

結論

總結來說,本文講述了如何在 C# 中以程式方式處理壓縮檔案的基本方面 IronZIP 圖書館。從安裝過程到實際範例 提取, 創建,和 保護 ZIP 封存檔案,開發人員得到了寶貴的見解。IronZIP 的用戶友好 API、跨平台相容性和對加密方法的支持,使其成為在各種 C# 應用程式中高效管理 zip 檔案的多功能解決方案。

無論是更新現有檔案還是處理受密碼保護的封存檔案,IronZIP 都簡化了此過程,為開發人員提供了強大的工具組,以便在其 C# 專案中尋求有效的檔案操作能力。

IronZIP 提供靈活的授權選項,包括 免費試用 為了長期使用,開發人員可以選擇最符合他們專案需求的授權模式,確保在 C# 應用程式中實現 IronZIP 的多功能性和便利性。

< 上一頁
如何在C#中使用密碼壓縮文件
下一個 >
如何在 C# 中從多個文件創建 ZIP 文件

準備開始了嗎? 版本: 2024.10 剛剛發布

免費 NuGet 下載 總下載次數: 4,566 查看許可證 >