讓我們學習如何保護電子表格文件免遭未經授權的訪問。之前我們討論過向 Excel 電子表格添加文本和圖像水印以避免任何非法使用。在本文中,我們將了解如何使用 C# 對 Excel 文件進行密碼保護。此外,我們將更改現有密碼,並學習刪除密碼以解鎖 Excel 文件。

使用密碼以編程方式保護 Excel 文件 - 鎖定解鎖

下面討論以下主題:

用於鎖定和解鎖 Excel 文件的 .NET API

要鎖定和解鎖文檔,我們將使用 GroupDocs.Merger for .NET。此 API 允許添加、更改和刪除 .NET 應用程序中文檔的密碼安全功能。除了保護和取消保護 Excel 電子表格之外,該 API 還提供了文檔中提到的更多功能,例如合併和拆分。

您可以從 下載部分 下載 DLL 或 MSI 安裝程序,或通過 NuGet 在您的 .NET 應用程序中安裝 API。

PM> Install-Package GroupDocs.Merger

使用 C# 密碼保護 Excel 文件 - 鎖定電子表格

使用密碼鎖定電子表格

讓我們首先通過使用密碼鎖定文件來添加保護。以下步驟演示如何使用 C# 將密碼安全性添加到 Excel 電子表格。

  • 使用 AddPasswordOptions 類定義密碼。
  • 使用 Merger 類加載 Excel 文件 (XLS/XLSX)。
  • 通過使用 AddPassword 方法添加密碼來鎖定文件。
  • 使用 Save 方法保存受保護的電子表格。

為了安全起見,以下 C# 代碼將密碼添加到 Excel 文件中。

/*
 * 使用 C# 向 Excel 電子表格文件 (XLS/XLSX) 添加密碼保護
 */
string filePath = @"path/spreadsheet.xlsx";

AddPasswordOptions addOptions = new AddPasswordOptions("mySECRETpassWORD");

using (Merger merger = new Merger(filePath))
{
    merger.AddPassword(addOptions);
    merger.Save(@"path/protected-spreadsheet.xlsx");
}

這是上面代碼的輸出。當您嘗試打開電子表格文件時,編輯器或查看器將要求輸入密碼以證明您的權限。

輸入受保護文件的密碼

使用 C# 更新 Excel 文件的現有密碼

你的密碼真的暴露了嗎?下次要小心一點。讓我們用新的、有點困難的方法快速地以編程方式更改它。通過以下步驟,您可以在 C# 的 .NET 應用程序中更改電子表格文件的當前密碼。

  • 首先,使用當前密碼準備加載選項
  • 然後,使用新密碼準備更新密碼選項
  • 然後,使用 Merger 類和加載選項加載 XLS/XLSX 文件。
  • 現在,使用 UpdatePassword 方法更改現有密碼。
  • 最後,使用 Save 方法保存鎖定的文件和更改後的密碼。

以下是更改電子表格文件當前密碼的代碼片段。

/*
 * 使用 C# 更改受保護的 Excel 電子表格的密碼
 */
string filePath = @"path/protected-spreadsheet.xlsx";

LoadOptions loadOptions = new LoadOptions("mySECRETpassWORD");
UpdatePasswordOptions updateOptions = new UpdatePasswordOptions("TOPSECRET_pa22WORD");

using (Merger merger = new Merger(filePath, loadOptions))
{
    merger.UpdatePassword(updateOptions);
    merger.Save(@"path/pwd-changed-spreadsheet.xlsx");
}

使用 C# 刪除密碼以取消保護 Excel 電子表格文件 - 解鎖 XLS/XLSX

電子表格已解鎖 - 已刪除密碼

如果您的電子表格現在處於安全狀態,您可以刪除密碼以輕鬆訪問這些電子表格。以下步驟演示如何使用 C# 刪除 Excel 文件的密碼來解鎖 Excel 文件。

  • 使用文件的密碼準備加載選項
  • 使用 Merger 類和加載選項加載電子表格文件。
  • 使用RemovePassword 方法刪除現有密碼。
  • 使用 Save 方法保存解鎖的文件。

以下 C# 代碼片段通過刪除 Excel 文件的現有密碼來解鎖該文件,因此任何人都可以在未經授權的情況下訪問它。

/*
 * 使用 C# 從 Excel 電子表格中刪除密碼保護
 */
string filePath = @"path/protected-spreadsheet.xlsx";

LoadOptions loadOptions = new LoadOptions("mySECRETpassWORD");

using (Merger merger = new Merger(filePath, loadOptions))
{
    merger.RemovePassword();
    merger.Save(@"path/unlocked-spreadsheet.xlsx");
}

結論

讓我們總結一下今天所學的內容。我們從簡單的 Excel 電子表格 (XLS/XLSX) 文件開始,並添加了密碼保護。然後我們更改了該受保護電子表格的現有密碼。最後,我們學習瞭如何刪除受保護文件的密碼以取消對 Excel 電子表格的保護。現在您可以使用 .NET API 構建您自己的密碼保護器和密碼刪除器應用程序。

要了解有關 GroupDocs.Merger for .NET 的更多信息,請訪問 文檔。如有疑問,請通過論壇聯繫我們。

獲取免費的 API 許可證

您可以獲得免費的臨時許可證來使用該 API,而不受評估限制。

也可以看看