跳至頁尾內容
使用 IRONZIP

如何在 C# 中使用密碼壓縮文件

ZIP 檔案廣泛用於壓縮和歸檔數據,使傳輸和儲存大量檔案變得更加容易。 然而,在某些情況下,額外的安全措施至關重要,這就凸顯了密碼保護的 zip 檔案的重要性。 密碼保護確保只有授權人員才能存取和提取 ZIP 存檔的內容,為敏感資料增加額外的安全性。

在本文中,我們將探討如何使用 C# 和 IronZIP 程式庫建立受密碼保護的 ZIP 檔案。 IronZIP 是一個功能強大的 C# ZIP 歸檔庫,它簡化了在 .NET 應用程式中處理 ZIP 檔案的過程。

如何建立帶密碼保護的 C# ZIP 文件

  1. 在 Visual Studio 中建立一個 C# 項目
  2. 從 NuGet 套件管理器安裝 IronZIP 庫
  3. 使用IronZipArchive類別建立一個空的 ZIP 歸檔對象
  4. 使用Encrypt方法新增密碼保護
  5. 使用Add方法將檔案加入歸檔物件中
  6. 使用SaveAs方法匯出 ZIP 檔案

IronZIP庫簡介

如何在 C# 中使用密碼壓縮檔案:圖 1 - IronZIP 網頁

IronZIP是一個領先的 C# ZIP 歸檔庫,專為在 .NET 中建立、讀取和提取歸檔檔案而設計。 它提供了一個用戶友好的 API,使開發人員能夠輕鬆地將歸檔管理功能整合到他們的 .NET 專案中。 IronZIP 支援多種歸檔格式,包括 ZIP、TAR、GZIP 和 BZIP2,為輕鬆處理 zip 檔案提供了全面的解決方案。

IronZIP的詳細功能

相容性

  • 支援 .NET 8、7、6、5、Core、Standard 和 Framework。
  • 相容於 C#、VB.NET 和 F# 語言。
  • 跨平台支援 Windows、Linux、Mac、iOS、Android、Docker、Azure 和 AWS。
  • 與 Microsoft Visual Studio 和 JetBrains ReSharper & Rider 等流行的 IDE 整合。

檔案產生與編輯

  • 支援 ZIP、TAR、GZIP 和 BZIP2 歸檔格式。
  • 建立、匯入和匯出 ZIP 檔案。
  • 使用傳統加密、AES128 或 AES256 加密設定對 ZIP 檔案進行密碼保護。
  • 自訂壓縮,9 個等級。 提供最佳的尺寸縮小效果。
  • 管理歸檔中的文件項目,包括新增、提取和刪除。

安裝

  • 透過 NuGet 套件管理器或套件管理器控制台快速輕鬆地安裝。
  • 與 DigiCert 簽署二進位檔案集成,實現安全的二進位檔案認證。

在 Visual Studio 中建立 C# 控制台專案的步驟

讓我們逐步了解如何在 Visual Studio 中建立一個 C# 控制台項目,並使用 IronZIP 對 zip 檔案進行密碼保護。

1.開啟 Visual Studio。

  1. 建立一個新的 C# 控制台應用程式專案。
  2. 為你的項目命名並選擇一個地點。

    如何在 C# 中使用密碼壓縮檔案:圖 2 - 設定項目名稱和位置

  3. 從"附加資訊"中選擇最新版本的 .NET Framework。 IronZIP 支援最新的 8.0 .NET Framework。
  4. 點選"建立"生成項目。

安裝 IronZIP

要在您的專案中使用 IronZIP,您需要安裝該程式庫。 您可以使用 NuGet 套件管理器或套件管理器控制台來完成此操作。

使用 NuGet 套件管理員

  1. 在解決方案資源管理器中以滑鼠右鍵按一下您的專案。
  2. 選擇"管理 NuGet 套件..."
  3. 搜尋"IronZip",然後點選"安裝"。

如何在 C# 中使用密碼壓縮檔案:圖 3 - 使用 NuGet 套件管理器安裝 IronZIP

使用軟體套件管理器控制台

  1. 開啟軟體包管理器控制台。
  2. 執行以下命令:

    Install-Package IronZip

給 ZIP 檔案設定密碼保護的步驟

IronZIP 安裝完成後,您就可以使用該程式庫對 zip 檔案進行密碼保護了。

導入所需庫

using IronZip;
using IronZip.Enum;
using IronZip;
using IronZip.Enum;
$vbLabelText   $csharpLabel

這些程式碼從 IronZIP 庫導入必要的命名空間: IronZip包含主要類別和功能,而IronZip.Enum包含庫中使用的枚舉。

主修課程

class Program
{
    static void Main()
    {
        // Code execution starts here
    }
}
class Program
{
    static void Main()
    {
        // Code execution starts here
    }
}
$vbLabelText   $csharpLabel

這是程式的主類,其中包含Main方法,程式碼從這裡開始執行。

建立空的 ZIP 壓縮包

using (var archive = new IronZipArchive(9)) 
{ 
     // Code within the 'using' block 
}
using (var archive = new IronZipArchive(9)) 
{ 
     // Code within the 'using' block 
}
$vbLabelText   $csharpLabel

using語句確保IronZipArchive物件在使用後被正確釋放。 它創建了一個具有最高壓縮等級(9)的IronZipArchive新實例。

對 ZIP 壓縮檔進行密碼保護

以下一行程式碼可為 ZIP 壓縮檔案新增密碼保護

archive.Encrypt("P@ssw0rd", EncryptionMethods.Traditional);
archive.Encrypt("P@ssw0rd", EncryptionMethods.Traditional);
$vbLabelText   $csharpLabel

archive物件呼叫Encrypt方法來為 ZIP 檔案設定密碼保護。它接受兩個參數:密碼字串("P@ssw0rd")和加密方法( EncryptionMethods.Traditional )。

IronZIP 也提供 AES128 和 AES256 進階密碼保護,更安全,可防止 ZIP 檔案被竄改。

將檔案加入 ZIP 壓縮包

archive.Add("./assets/file1.txt");
archive.Add("./assets/image1.png");
archive.Add("./assets/file1.txt");
archive.Add("./assets/image1.png");
$vbLabelText   $csharpLabel

Add方法用於向 ZIP 壓縮包中新增檔案。在本例中,位於"./assets/"目錄下的一個文字檔案和一個圖片檔案( file1.txtimage1.png )被加入到壓縮包中。

需要新增的文件如下:

如何在 C# 中使用密碼壓縮檔案:圖 4 - 新增的檔案在 ZIP 檔案中的顯示方式

導出 ZIP 壓縮包

archive.SaveAs("output.zip");
archive.SaveAs("output.zip");
$vbLabelText   $csharpLabel

呼叫SaveAs方法匯出 ZIP 壓縮文件,並將輸出檔案名稱指定為"output.zip"。 這將建立一個包含指定內容和密碼的受密碼保護的 ZIP 檔案。

造訪程式碼範例頁面,以了解更多關於如何使用 IronZIP 在 C# 中建立、讀取、提取和執行其他與 ZIP 檔案相關的操作的資訊。

以下是完整的原始程式碼,其中包含分隔的字串路徑和一個密碼屬性,以便更好地進行控制:

using IronZip;
using IronZip.Enum;

class Program
{
    static void Main()
    {
        // Define password and file paths for the ZIP archive
        string password = "P@ssw0rd";
        string filename = "./assets/file1.txt";
        string imagename = "./assets/image1.png";

        // Create a new ZIPArchive with the highest compression level
        using (var archive = new IronZipArchive(9))
        {
            // Add Password to protect the ZIP (Support AES128 & AES256)
            archive.Encrypt(password, EncryptionMethods.Traditional);

            // Add files to the archive
            archive.Add(filename);
            archive.Add(imagename);

            // Export the Encrypted ZIP file archive
            archive.SaveAs("output.zip");
        }
    }
}
using IronZip;
using IronZip.Enum;

class Program
{
    static void Main()
    {
        // Define password and file paths for the ZIP archive
        string password = "P@ssw0rd";
        string filename = "./assets/file1.txt";
        string imagename = "./assets/image1.png";

        // Create a new ZIPArchive with the highest compression level
        using (var archive = new IronZipArchive(9))
        {
            // Add Password to protect the ZIP (Support AES128 & AES256)
            archive.Encrypt(password, EncryptionMethods.Traditional);

            // Add files to the archive
            archive.Add(filename);
            archive.Add(imagename);

            // Export the Encrypted ZIP file archive
            archive.SaveAs("output.zip");
        }
    }
}
$vbLabelText   $csharpLabel

輸出

執行程式後,您的專案目錄中將出現一個名為"output.zip"的受密碼保護的單一文件,其中包含指定的文件。

如何在 C# 中使用密碼壓縮檔案:圖 5 - 彈出視窗提示輸入密碼以保護 ZIP 檔案

結論

在本文中,我們探討了密碼保護的 ZIP 檔案的重要性,並介紹了 IronZIP 庫,它是在 C# 專案中處理 ZIP 歸檔檔案的強大解決方案。 我們詳細介紹了 IronZIP 的各項功能,包括相容性、歸檔產生、編輯功能以及簡易的安裝步驟。 該程式庫支援傳統和進階加密方法,以保護文件免遭篡改。 最後,我們逐步解解如何在 Visual Studio 中建立一個 C# 控制台專案、安裝 IronZIP 以及對 ZIP 檔案進行密碼保護。

IronZIP 簡化了在 C# 應用程式中處理 ZIP 檔案的過程,為開發人員提供了一套強大的歸檔管理和安全工具集。 將 IronZIP 整合到您的專案中,可增強在處理 ZIP 檔案中的敏感資訊時的資料保護。 有關 IronZIP 及其功能的更多詳細信息,請訪問官方文件頁面。

IronZIP 提供免費試用,方便用戶長期使用。 其精簡版套餐起價為$799 。

常見問題解答

如何在 C# 中建立受密碼保護的 ZIP 檔案?

您可以使用 IronZIP 庫在 C# 中建立受密碼保護的 ZIP 檔案。首先,透過 NuGet 安裝該庫,然後建立一個IronZipArchive對象,使用Encrypt方法新增密碼,將檔案新增至檔案中,並使用SaveAs儲存檔案。

有哪些加密選項可用於保護 ZIP 檔案?

IronZIP 提供傳統的加密方式、AES128 加密方式和 AES256 加密方式來保護 ZIP 檔案。這些選項提供不同等級的安全保護,以保護 ZIP 壓縮包中的敏感資料。

IronZIP 是否相容於多個 .NET 版本?

是的,IronZIP 與 .NET 8、7、6、5、Core、Standard 和 Framework 相容,使其成為在不同的 .NET 環境中工作的開發人員的多功能選擇。

如何在我的專案中安裝 IronZIP?

您可以使用 Visual Studio 中的 NuGet 套件管理器安裝 IronZIP。在套件管理器中搜尋“IronZip”,並將其新增至您的專案即可開始管理 ZIP 檔案。

IronZIP 能否與 C# 以外的程式語言一起使用?

是的,IronZIP 除了相容 C# 之外,還相容於 VB.NET 和 F#,這使得開發人員可以在各種 .NET 語言應用程式中使用它。

要設定用於 ZIP 檔案管理的 C# 控制台應用程序,需要哪些步驟?

若要使用 IronZIP 設定用於 ZIP 檔案管理的 C# 控制台應用程序,請在 Visual Studio 中建立新的控制台項目,透過 NuGet 安裝 IronZIP,然後依照庫的文件新增 ZIP 檔案功能。

使用 IronZIP 處理 ZIP 檔案的主要優勢是什麼?

IronZIP 透過提供易於使用的 API、跨平台支援以及密碼保護和對多種存檔格式的支援等功能,簡化了 ZIP 檔案的管理,從而增強了功能性和資料安全性。

密碼保護如何提高 ZIP 檔案的安全性?

密碼保護確保只有授權人員才能存取 ZIP 檔案的內容,為儲存在存檔中的敏感資料增加了一層關鍵的安全性。

柯蒂斯·週
技術撰稿人

Curtis Chau擁有卡爾頓大學電腦科學學士學位,專長於前端開發,精通Node.js、TypeScript、JavaScript和React。他熱衷於打造直覺美觀的使用者介面,喜歡使用現代框架,並擅長撰寫結構清晰、視覺效果出色的使用者手冊。

除了開發工作之外,柯蒂斯對物聯網 (IoT) 也抱有濃厚的興趣,致力於探索硬體和軟體整合的創新方法。閒暇時,他喜歡玩遊戲和製作 Discord 機器人,將他對科技的熱愛與創造力結合。