zaszyfruj odszyfruj pliki Excela w Javie

MS Excel zapewnia szeroki zakres funkcji do bezproblemowego przechowywania i analizowania danych. Możesz wykonywać obliczenia, generować wykresy, a także definiować własną logikę za pomocą modułów VBA. Znając znaczenie danych w arkuszach kalkulacyjnych, MS Excel umożliwia ochronę skoroszytów za pomocą szyfrowania. Ponadto możesz zabezpieczyć pliki Excel hasłem, aby uniknąć nieautoryzowanego dostępu. Zgodnie z tym, w tym artykule opisano, jak szyfrować/odszyfrowywać i zabezpieczać hasłem pliki programu Excel za pomocą języka Java.

Java API do szyfrowania i odszyfrowywania plików Excel

Aspose.Cells for Java to potężny interfejs API do obsługi arkuszy kalkulacyjnych, który umożliwia bezproblemowe tworzenie plików Excel i manipulowanie nimi. Ponadto umożliwia szyfrowanie i odszyfrowywanie skoroszytów w ciągu kilku wierszy kodu. Ponadto możesz zabezpieczyć plik Excela hasłem. Aspose.Cells for Java można pobrać jako JAR lub zainstalować przy użyciu następujących konfiguracji Maven.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-cells</artifactId>
    <version>20.12</version>
</dependency>

Szyfruj pliki programu Excel przy użyciu języka Java

Aspose.Cells for Java udostępnia następujące typy szyfrowania plików programu Excel 2003.

Jednak skoroszyty 2007/2010 są szyfrowane przy użyciu technik szyfrowania SHA i AES w taki sam sposób, jak robi to program MS Excel. Poniżej przedstawiono kroki, aby zaszyfrować plik programu Excel przy użyciu Aspose.Cells for Java.

W celu demonstracji poniższy przykładowy kod pokazuje, jak zaszyfrować plik programu Excel przy użyciu języka Java.

// Utwórz instancję obiektu skoroszytu według ścieżki pliku programu Excel
Workbook workbook = new Workbook("workbook.xlsx");

// Zabezpiecz plik hasłem
workbook.getSettings().setPassword("1234");

// Szyfruj, określając typ szyfrowania
workbook.setEncryptionOptions(EncryptionType.XOR, 40);

// Określ typ silnego szyfrowania (RC4, Microsoft Strong Cryptographic Provider)
workbook.setEncryptionOptions(EncryptionType.STRONG_CRYPTOGRAPHIC_PROVIDER, 128);

// Zapisz zaszyfrowany plik programu Excel
workbook.save("encrypted-workbook.xlsx");

Odszyfruj pliki programu Excel za pomocą języka Java

Aby odszyfrować zaszyfrowany plik Excel, wystarczy podać jego hasło, a resztą zajmie się Aspose.Cells for Java. Poniżej przedstawiono kroki, aby odszyfrować plik programu Excel przy użyciu języka Java.

Poniższy przykładowy kod pokazuje, jak odszyfrować plik programu Excel chroniony hasłem przy użyciu języka Java.

// Zainicjuj opcje ładowania
LoadOptions loadOptions = new LoadOptions(LoadFormat.XLSX);

// Ustaw oryginalne hasło
loadOptions.setPassword("1234");

// Utwórz instancję obiektu Workbook ze ścieżką pliku Excel
Workbook workbook = new Workbook("encrypted-workbook.xlsx", loadOptions);

// Ustaw hasło na zero
workbook.getSettings().setPassword(null);

// Zapisz odszyfrowany plik Excel
workbook.save("decrypted-workbook.xlsx");

Zweryfikuj hasło do zaszyfrowanego pliku Excel

Oprócz szyfrowania/odszyfrowywania, Aspose.Cells for Java umożliwia również weryfikację hasła do chronionego pliku Excel. Poniżej przedstawiono kroki przeprowadzania weryfikacji hasła.

Poniższy przykładowy kod pokazuje, jak zweryfikować hasło do zaszyfrowanego pliku programu Excel przy użyciu języka Java.

// Utwórz obiekt strumienia
FileInputStream fstream = new FileInputStream("encrypted-workbook.xlsx");

// Zweryfikuj hasło
boolean isPasswordValid = FileFormatUtil.verifyPassword(fstream, "1234");

// Wydrukuj wyniki
System.out.println("Password is Valid: " + isPasswordValid);

Uzyskaj bezpłatną licencję API

Jeśli chcesz wypróbować interfejs API bez ograniczeń ewaluacyjnych, możesz uzyskać bezpłatną tymczasową licencję.

Wniosek

W tym artykule nauczyłeś się szyfrować lub odszyfrowywać pliki programu Excel przy użyciu języka Java. Ponadto widziałeś, jak zweryfikować hasło do zaszyfrowanego pliku Excel. Jeśli chcesz dowiedzieć się więcej o interfejsie API manipulowania arkuszami kalkulacyjnymi w języku Java, odwiedź dokumentację.

Zobacz też