MS Excel zapewnia mechanizm szyfrowania w celu ochrony danych w arkuszach kalkulacyjnych przed nieautoryzowanymi użytkownikami. Wraz z zastosowaniem szyfrowania możesz określić hasło wymagane do otwarcia plików Excel. W tym artykule opisano sposób przeprowadzania szyfrowania plików programu Excel z poziomu aplikacji .NET. W szczególności dowiesz się, jak szyfrować i odszyfrowywać pliki Excela za pomocą C#.
- Interfejs API języka C# do szyfrowania lub odszyfrowywania plików programu Excel
- Szyfruj pliki Excela za pomocą C#
- Odszyfruj pliki Excela za pomocą C#
- Sprawdź hasło do zaszyfrowanego pliku Excel
- Uzyskaj bezpłatną licencję
Interfejs API języka C# do szyfrowania lub odszyfrowywania plików programu Excel
W celu wykonania operacji szyfrowania i odszyfrowywania na plikach programu Excel w tym artykule zastosowano interfejs API Aspose.Cells for .NET. Interfejs API zapewnia proste sposoby szyfrowania i zabezpieczania hasłem plików Excel z żądanym typem szyfrowania. Możesz pobrać interfejs API lub zainstalować go w swoich aplikacjach .NET przy użyciu NuGet.
Install-Package Aspose.Cells
Szyfruj pliki Excela za pomocą C#
Aspose.Cells for .NET obsługuje typy szyfrowania SHA i AES w celu szyfrowania plików Excel w taki sam sposób, jak robi to MS Excel. W przypadku plików programu Excel 2003 można wybrać jeden z następujących typów szyfrowania:
- XOR
- Kompatybilny (kompatybilny z pakietem Office 97/2000)
- Ulepszony dostawca usług kryptograficznych V1
- Silny dostawca usług kryptograficznych
Poniżej przedstawiono kroki szyfrowania pliku programu Excel przy użyciu języka C#.
- Załaduj plik Excela, używając klasy Workbook.
- Użyj metody Workbook.SetEncryptionOptions(EncryptionType, int), aby zastosować żądane szyfrowanie.
- Ustaw hasło za pomocą właściwości Workbook.Settings.Password.
- Zapisz skoroszyt przy użyciu metody Workbook.Save(string).
Poniższy przykładowy kod pokazuje, jak zaszyfrować plik programu Excel przy użyciu języka C#.
// Otwórz plik Excela
Workbook workbook = new Workbook("Book1.xls");
// Określ typ szyfrowania XOR
workbook.SetEncryptionOptions(EncryptionType.XOR, 40);
// Określ typ silnego szyfrowania (RC4, Microsoft Strong Cryptographic Provider)
workbook.SetEncryptionOptions(EncryptionType.StrongCryptographicProvider, 128);
// Zabezpiecz plik hasłem
workbook.Settings.Password = "1234";
// Zapisz plik Excela
workbook.Save("encryptedBook.xls");
Odszyfruj pliki Excela za pomocą C#
Poniżej przedstawiono kroki, aby odszyfrować pliki programu Excel przy użyciu Aspose.Cells for .NET API.
- Załaduj plik Excel, podając ścieżkę i hasło do konstruktora klasy Workbook.
- Ustaw hasło na null za pomocą właściwości Workbook.Settings.Password.
- Zapisz skoroszyt przy użyciu metody Workbook.Save(string).
Poniższy przykładowy kod pokazuje, jak odszyfrować plik programu Excel przy użyciu języka C#.
// Otwórz plik Excela
Workbook workbook = new Workbook("encryptedBook.xlsx", new LoadOptions { Password="1234" });
// Ustaw hasło na zero
workbook.Settings.Password = null;
// Zapisz plik Excela.
workbook.Save("decryptedBook.xlsx");
Zweryfikuj hasło do zaszyfrowanego pliku Excel za pomocą C#
Aspose.Cells for .NET umożliwia również weryfikację hasła do zaszyfrowanych plików Excel. W tym celu możesz wykonać poniższe kroki.
- Załaduj plik programu Excel przy użyciu klasy FileStream.
- Aby zweryfikować hasło, użyj metody FileFormatUtil.VerifyPassword(FileStream, string), która zwraca wartość logiczną.
- Jeśli zwrócona wartość to prawda, hasło jest ważne, w przeciwnym razie jest nieprawidłowe.
Poniższy przykładowy kod pokazuje, jak zweryfikować hasło do zaszyfrowanego pliku programu Excel przy użyciu języka C#.
// Utwórz obiekt strumienia
FileStream fstream = new FileStream("EncryptedBook1.xlsx", FileMode.Open);
// Zweryfikuj hasło
bool isPasswordValid = FileFormatUtil.VerifyPassword(fstream, "1234");
// Wydrukuj wyniki
Console.WriteLine("Password is Valid: " + isPasswordValid);
Uzyskaj bezpłatną licencję
Możesz uzyskać bezpłatną tymczasową licencję, aby wypróbować interfejs API bez ograniczeń ewaluacyjnych.
Wniosek
W tym artykule nauczyłeś się szyfrować i odszyfrowywać pliki programu Excel przy użyciu języka C# z poziomu aplikacji .NET. Ponadto widziałeś, jak zweryfikować hasło do zaszyfrowanych plików Excel. Więcej informacji na temat interfejsu API automatyzacji programu C# Excel można znaleźć w dokumentacji.