使用 IRONZIP 如何在 C# 中解壓縮檔案至目錄 Curtis Chau 更新:7月 28, 2025 下載 IronZIP NuGet 下載 開始免費試用 法學碩士副本 法學碩士副本 將頁面複製為 Markdown 格式,用於 LLMs 在 ChatGPT 中打開 請向 ChatGPT 諮詢此頁面 在雙子座打開 請向 Gemini 詢問此頁面 在雙子座打開 請向 Gemini 詢問此頁面 打開困惑 向 Perplexity 詢問有關此頁面的信息 分享 在 Facebook 上分享 分享到 X(Twitter) 在 LinkedIn 上分享 複製連結 電子郵件文章 在軟體開發中,以程式方式解壓縮檔案是一項常見的任務,尤其是在處理壓縮檔案時。 在本文中,我們將探討如何使用IronZIP程式庫在C#中從 ZIP 檔案中擷取檔案。 無論您是在開發 Windows 應用程式還是 .NET 項目,了解解壓縮檔案的過程都可能非常有價值。 讓我們深入了解如何在 C# 程式碼庫中有效地處理 ZIP 檔案。 本文將闡述以下內容: IronZIP庫的安裝過程 如何解壓縮 ZIP 壓縮包 如何解壓縮受密碼保護的 ZIP 壓縮包 如何建立 ZIP 文件 如何建立受密碼保護的 ZIP 文件 為什麼要解壓縮檔案? ZIP 文件,也稱為 ZIP 壓縮文件,是將多個文件打包到一個壓縮容器中的文件。 解壓縮這些檔案包括提取壓縮資料並將其恢復到原始狀態。 當您需要在 C# 應用程式中存取或操作資料時,此過程至關重要。 IronZIP 透過提供簡單的壓縮資料管理方法簡化了這項任務。 IronZIP是什麼? IronZIP是一個功能強大的 C# ZIP 歸檔庫,它簡化了在 .NET 應用程式中建立、讀取和提取歸檔檔案的流程。 無論您需要壓縮文件、從現有存檔中提取數據,還是管理 ZIP 文件,IronZIP 都提供了一個用戶友好的 API,可以有效地完成這些任務。 IronZIP 簡化了在 .NET 應用程式中處理 ZIP 存檔的操作。 它支援多種歸檔格式,包括 ZIP、TAR、GZIP 和 BZIP2。 IronZIP 是跨平台的,相容於 .NET Core、.NET Standard 和 .NET Framework。 它還提供高級功能,例如密碼保護的存檔、可自訂的壓縮等級和檔案條目管理。 如何在 C# 中將檔案提取到目錄 現在,我將討論一些用 C# 從 ZIP 檔案中提取資料的範例。 首先在 Visual Studio 中建立一個新的 C# 專案。 選擇合適的項目類型(例如,控制台應用程式、Windows 窗體、ASP.NET Core 等)。 接下來,我們需要安裝IronZIP NuGet 套件。 透過 NuGet 套件管理器安裝 IronZIP 若要安裝 IronZIP NuGet 套件,您可以在套件管理器控制台中使用下列命令: Install-Package IronZip 或者,您可以使用 Visual Studio 中的套件管理器 UI 來搜尋和安裝 IronZIP 套件。 在您的 C# 代碼中,導入 IronZIP 命名空間以訪問其類和方法。 using IronZip; using IronZip; Imports IronZip $vbLabelText $csharpLabel C# 程式碼範例:提取 ZIP 文件 以下 C# 程式碼將檔案解壓縮到指定的目錄。 // This line extracts the "Images.zip" archive to the "Extracted Images" directory IronZipArchive.ExtractArchiveToDirectory(@"E:\Images.zip", "Extracted Images"); // This line extracts the "Images.zip" archive to the "Extracted Images" directory IronZipArchive.ExtractArchiveToDirectory(@"E:\Images.zip", "Extracted Images"); ' This line extracts the "Images.zip" archive to the "Extracted Images" directory IronZipArchive.ExtractArchiveToDirectory("E:\Images.zip", "Extracted Images") $vbLabelText $csharpLabel 上述程式碼讀取指定的 ZIP 檔案( "E:\Images.zip" ),解壓縮其內容,並將擷取的檔案放入名為"Extracted Images"的目錄中。 說明 IronZipArchive指的是 IronZIP 函式庫提供的類別。 這是在 C# 程式碼中處理 ZIP 歸檔檔案的主要入口點。 ExtractArchiveToDirectory(...)是IronZipArchive類別提供的方法(或函數)。 它允許您將 ZIP 檔案(在本例中為檔案"E:\Images.zip" )的內容提取到指定目錄(在本例中為名為"Extracted Images"目錄)。 此方法接受兩個參數: 第一個參數( @"E:\Images.zip" )是要提取的 ZIP 檔案的路徑。 第二個參數( "Extracted Images" )是您希望從 ZIP 檔案中提取檔案的目錄。 Output: 如何在 C# 中將檔案解壓縮到目錄:圖 1 - 解壓縮影像目錄中的文件 如何解壓縮受密碼保護的 ZIP 文件 IronZIP 提供了一種簡單的方法來提取加密的 ZIP檔案。 以下程式碼示範如何從受密碼保護的 ZIP 檔案中提取所有檔案。 // This line extracts the "EncryptedImages.zip" archive to the "ExtractedImages" directory with the given password IronZipArchive.ExtractArchiveToDirectory(@"EncryptedImages.zip", "ExtractedImages", "zipP@55w0rd"); // This line extracts the "EncryptedImages.zip" archive to the "ExtractedImages" directory with the given password IronZipArchive.ExtractArchiveToDirectory(@"EncryptedImages.zip", "ExtractedImages", "zipP@55w0rd"); ' This line extracts the "EncryptedImages.zip" archive to the "ExtractedImages" directory with the given password IronZipArchive.ExtractArchiveToDirectory("EncryptedImages.zip", "ExtractedImages", "zipP@55w0rd") $vbLabelText $csharpLabel 上述程式碼使用 IronZIP 將"EncryptedImages.zip"壓縮包的內容解壓縮到"ExtractedImages"目錄。它還指定了解密密碼"zipP@55w0rd" ,表示該 ZIP 檔案已加密,需要使用提供的密碼才能解壓縮。 它會覆蓋現有文件。 Output: 如何在 C# 中將檔案解壓縮到目錄:圖 2 - 已解壓縮到"已擷取影像"目錄中的受密碼保護的文件 在 C# 中使用 IronZIP 時,將檔案解壓縮到目錄需要充分利用 IronZIP 庫的各項功能。透過使用諸如IronZipArchive.ExtractArchiveToDirectory之類的函數,開發人員可以輕鬆提取壓縮文件,並提供一種簡單的方法來處理本地文件頭。 它提供了一種在應用程式中更新 zip 檔案和 RAR 檔案的有效方法。 IronZIP 也提供了在 C# 和 .NET 應用程式中建立 ZIP 檔案的方法。 讓我們用 C# 建立一個 ZIP 壓縮檔。 如何建立 ZIP 壓縮文件 以下程式碼範例將建立一個 ZIP 壓縮檔。 static void Main(string[] args) { // Create a new ZIP archive with a high compression level (9) using (var archive = new IronZipArchive(9)) { // Add image files to the archive 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 to the file "MyImages.zip" archive.SaveAs("MyImages.zip"); } } static void Main(string[] args) { // Create a new ZIP archive with a high compression level (9) using (var archive = new IronZipArchive(9)) { // Add image files to the archive 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 to the file "MyImages.zip" archive.SaveAs("MyImages.zip"); } } Shared Sub Main(ByVal args() As String) ' Create a new ZIP archive with a high compression level (9) Using archive = New IronZipArchive(9) ' Add image files to the archive 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 to the file "MyImages.zip" archive.SaveAs("MyImages.zip") End Using End Sub $vbLabelText $csharpLabel 上面的程式碼示範如何使用 IronZIP 建立一個新的 ZIP 歸檔檔案(壓縮等級為 9),並新增多個條目,每個條目代表指定檔案路徑中的一個映像檔( image1.png 、 image2.png 、 image3.png和image4.png )。 最後,使用SaveAs方法將建立的 ZIP 檔案匯出為指定目錄中的"MyImages.zip" 。 壓縮等級 9 表示最大程度的壓縮,可減少檔案大小,但處理時間可能會更長。 如何在 C# 中將檔案解壓縮到目錄:圖 3 - 上一段程式碼輸出的 ZIP 壓縮封包 如何建立受密碼保護的 ZIP 壓縮包 以下程式碼將建立一個受密碼保護的 ZIP 檔案。 // Create a new ZIP archive with a high compression level (9) using (var archive = new IronZipArchive(9)) { // Password protect the ZIP archive (Support AES128 & AES256) archive.Encrypt("miPassw0rd", EncryptionMethods.AES256); // Add image files to the archive archive.Add(@"E:\Images\image1.png"); archive.Add(@"E:\Images\image2.png"); // Export the ZIP archive as "PasswordProtectedImages.zip" archive.SaveAs("PasswordProtectedImages.zip"); } // Create a new ZIP archive with a high compression level (9) using (var archive = new IronZipArchive(9)) { // Password protect the ZIP archive (Support AES128 & AES256) archive.Encrypt("miPassw0rd", EncryptionMethods.AES256); // Add image files to the archive archive.Add(@"E:\Images\image1.png"); archive.Add(@"E:\Images\image2.png"); // Export the ZIP archive as "PasswordProtectedImages.zip" archive.SaveAs("PasswordProtectedImages.zip"); } ' Create a new ZIP archive with a high compression level (9) Using archive = New IronZipArchive(9) ' Password protect the ZIP archive (Support AES128 & AES256) archive.Encrypt("miPassw0rd", EncryptionMethods.AES256) ' Add image files to the archive archive.Add("E:\Images\image1.png") archive.Add("E:\Images\image2.png") ' Export the ZIP archive as "PasswordProtectedImages.zip" archive.SaveAs("PasswordProtectedImages.zip") End Using $vbLabelText $csharpLabel 上面的程式碼示範如何使用 IronZIP 建立受密碼保護的 ZIP 存檔,並指定加密方法(本例中為 AES256)。 密碼"miPassw0rd"用於保護 ZIP 檔案。然後,程式碼會將指定檔案路徑中的兩個映像檔( image1.png和image2.png )加入壓縮包中。 最後,使用SaveAs方法將受密碼保護的 ZIP 壓縮套件匯出為"PasswordProtectedImages.zip."這樣可以確保使用指定的密碼和加密方法來保護內容安全。 IronZIP 支援 AES128、AES256 和傳統方法。 結論 總而言之,本文涵蓋了使用IronZIP庫在 C# 中以程式設計方式處理壓縮檔案的基本面向。 從安裝流程到提取、建立和保護ZIP 歸檔的實際範例,開發人員都獲得了寶貴的見解。 IronZIP 的用戶友好型 API、跨平台相容性和對加密方法的支持,使其成為在各種 C# 應用程式中高效管理 ZIP 檔案的多功能解決方案。 無論是更新現有文件或處理受密碼保護的存檔,IronZIP 都能簡化流程,為希望在 C# 專案中有效進行文件操作的開發人員提供強大的工具集。 IronZIP 提供靈活的授權選項,包括長期使用的免費試用版。 開發人員可以選擇最符合其專案需求的授權模式,從而確保在 C# 應用程式中實現 IronZIP 的靈活性和便利性。 常見問題解答 如何使用 C# 從 ZIP 存檔中萃取檔案? 您可以使用 IronZIP 在 C# 中從 ZIP 存檔中萃取檔案。IronZipArchive.ExtractArchiveToDirectory 方法允許您指定 ZIP 檔案的路徑和萃取的目標目錄。 在 .NET 專案中安裝 IronZIP 的步驟為何? 要在 .NET 專案中安裝 IronZIP,您可以使用 Visual Studio 中的 NuGet Package Manager。在套件管理員控制台執行指令 Install-Package IronZIP 或在 NuGet 套件管理員使用者介面搜尋 IronZIP,將它新增到您的專案中。 我可以使用 IronZIP 解壓縮受密碼保護的 ZIP 檔案嗎? 是的,IronZIP 支援解壓縮受密碼保護的 ZIP 檔案。您需要在 ExtractArchiveToDirectory 方法中提供密碼作為參數,才能存取並解壓縮檔案。 如何使用 C# 程式化建立 ZIP 檔案? 您可以使用 IronZIP 在 C# 中建立 ZIP 檔案,方法是實體化一個新的 IronZipArchive,使用 Add 方法新增檔案,並使用 SaveAs 方法儲存存檔。 IronZIP 支援多種歸檔格式嗎? 是的,IronZIP 支援多種歸檔格式,包括 ZIP、TAR、GZIP 和 BZIP2,可在 C# 應用程式中彈性處理不同的壓縮檔案類型。 IronZIP 是否與跨平台的 .NET 應用程式相容? IronZIP 與跨平台的 .NET 應用程式相容,因為它支援 .NET Core、.NET Standard 和 .NET Framework,使其適用於各種開發環境。 IronZIP 有哪些加密方法? IronZIP 提供加密方法來建立受密碼保護的 ZIP 檔案。您可以使用 Encrypt 方法設定密碼並保護您的歸檔。 在購買之前,我該如何評估 IronZIP? IronZIP 提供免費試用版與彈性的授權選項,讓開發人員在承諾購買之前先評估資料庫的功能與效能。 IronZIP 在 C# 中處理 ZIP 檔案有哪些優點? IronZIP 提供了用戶友好的 API,支援各種存檔格式和加密方法,並簡化了創建、讀取和提取 ZIP 存檔的過程,使其成為 C# 開發人員的高效工具。 Curtis Chau 立即與工程團隊聊天 技術作家 Curtis Chau 擁有卡爾頓大學計算機科學學士學位,專注於前端開發,擅長於 Node.js、TypeScript、JavaScript 和 React。Curtis 熱衷於創建直觀且美觀的用戶界面,喜歡使用現代框架並打造結構良好、視覺吸引人的手冊。除了開發之外,Curtis 對物聯網 (IoT) 有著濃厚的興趣,探索將硬體和軟體結合的創新方式。在閒暇時間,他喜愛遊戲並構建 Discord 機器人,結合科技與創意的樂趣。 相關文章 更新6月 22, 2025 如何在 C# 中將壓縮檔萃取至目錄 ZIP 檔案是一種方便的方式,可將多個檔案和目錄捆綁成單一歸檔。 閱讀更多 更新7月 28, 2025 如何在 C# 中使用密碼壓縮檔案 在本文中,我們將探討如何使用 C# 和 IronZIP 函式庫建立受密碼保護的 ZIP 檔案 閱讀更多 更新7月 28, 2025 如何使用 C# 在資料夾中壓縮檔案 ZIP 檔案是包含一個或多個壓縮檔案或資料夾,使用 ZIP 格式的檔案。它是一種常用的方式,將多個檔案或資料夾壓縮歸檔為單一檔案 閱讀更多 如何在 C# 中使用密碼壓縮檔案如何在 C# 中從多個檔案建...
更新7月 28, 2025 如何使用 C# 在資料夾中壓縮檔案 ZIP 檔案是包含一個或多個壓縮檔案或資料夾,使用 ZIP 格式的檔案。它是一種常用的方式,將多個檔案或資料夾壓縮歸檔為單一檔案 閱讀更多