Schützen Sie Excel Dateien in Java

Excel Dateien werden verwendet, um sowohl kleine als auch große Daten in Form von Zeilen und Spalten zu speichern. Neben der Datenspeicherung können Sie andere Vorgänge wie Berechnungen und Datenanalysen mithilfe von Grafiken und Diagrammen durchführen. Da Daten schützenswert sind, bietet Ihnen MS Excel die Möglichkeit, die Excel Dateien zu schützen. In diesem Artikel wird beschrieben, wie Sie den Schutz von MS Excel Dateien programmgesteuert automatisieren. Insbesondere erfahren Sie, wie Sie Excel Dateien mit Java schützen und entschützen können.

Java API zum Schutz von Excel Dateien

Aspose.Cells for Java ist eine bekannte Tabellenbearbeitungs-API, die zum Erstellen, Bearbeiten und Konvertieren von Excel Dateien aus Java Anwendungen heraus entwickelt wurde. Zusammen mit anderen grundlegenden sowie erweiterten Excel-Automatisierungsfunktionen unterstützt Aspose.Cells den Schutz der Excel Dateien. Sie können die JAR Datei der API entweder herunterladen oder mit der folgenden Maven-Konfiguration installieren.

<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>

Schützen Sie Excel Dateien mit Java

Aspose.Cells for Java bietet die folgenden Schutztypen, um die Excel Arbeitsmappen zu schützen.

  • ALLE - User cannot modify anything
  • INHALT - User cannot enter data
  • OBJEKTE - User cannot modify drawing objects
  • SZENARIEN - User cannot modify saved scenarios
  • STRUKTUR - User cannot modify saved structure
  • FENSTER - User cannot modify saved windows
  • KEINER - No protection

Im Folgenden sind die Schritte zum Schützen einer Excel Datei mit Aspose.Cells for Java aufgeführt.

Das folgende Codebeispiel zeigt, wie eine Excel Datei in Java geschützt wird.

// Öffnen Sie die Excel Datei
Workbook workbook = new Workbook("workbook.xlsx");

// Schützen Sie die Arbeitsmappe, indem Sie den Schutztyp angeben
workbook.protect(ProtectionType.ALL, "12345");

// Speicher die Datei
workbook.save("workbook_protected.xlsx");

Entschützen Sie Excel Dateien mit Java

Im Folgenden sind die Schritte zum Aufheben des Schutzes einer kennwortgeschützten Excel Datei mit Aspose.Cells for Java aufgeführt.

Das folgende Codebeispiel zeigt, wie der Schutz einer Excel Datei in Java aufgehoben wird.

// Öffnen Sie die Excel Datei
Workbook workbook = new Workbook("workbook_protected.xlsx");

// Schutz der Arbeitsmappe aufheben
workbook.unprotect("12345");

// Passwort auf null setzen
workbook.getSettings().setPassword(null);

// Speicher die Datei
workbook.save("workbook_unprotected.xlsx");

Schützen Sie Excel-Arbeitsblätter mit Java

Sie können den Schutz auch auf Arbeitsblattebene anwenden. Im Folgenden sind die Schritte zum Schützen eines Excel-Arbeitsblatts mit Aspose.Cells for Java aufgeführt.

Das folgende Codebeispiel zeigt, wie Sie ein Excel-Arbeitsblatt mit Java schützen.

// Öffnen Sie die Excel Datei
Workbook workbook = new Workbook("workbook.xlsx");

// Zugriff auf das erste Arbeitsblatt in der Excel Datei
WorksheetCollection worksheets = workbook.getWorksheets();
Worksheet worksheet = worksheets.get(0);

Protection protection = worksheet.getProtection();

// Die folgenden 3 Methoden gelten nur für Excel 2000 und frühere Formate
protection.setAllowEditingContent(false);
protection.setAllowEditingObject(false);
protection.setAllowEditingScenario(false);

// Schützen Sie das erste Arbeitsblatt mit einem Passwort "1234"
protection.setPassword("1234");

// Speicher die Datei
workbook.save("Excel.xlsx");

Entschützen Sie Arbeitsblätter mit Java

Das Verfahren zum Aufheben des Schutzes eines Arbeitsblatts ist dasselbe wie das Schützen eines Arbeitsblatts. Der einzige Unterschied besteht darin, dass Sie die Methode Worksheet.unprotect(String) verwenden. Das folgende Codebeispiel zeigt, wie der Schutz eines Excel-Arbeitsblatts mithilfe von Java aufgehoben wird.

// Öffnen Sie die Excel Datei
Workbook workbook = new Workbook("workbook.xlsx");

// Zugriff auf das erste Arbeitsblatt in der Excel Datei
WorksheetCollection worksheets = workbook.getWorksheets();
Worksheet worksheet = worksheets.get(0); 

// Schutz des Arbeitsblatts aufheben
worksheet.unprotect("12345");

// Speicher die Datei
workbook.save("workbook_updated.xlsx");

Holen Sie sich eine kostenlose Lizenz

Sie können eine kostenlose temporäre Lizenz erhalten, um die APIs ohne Evaluierungseinschränkungen zu testen.

Fazit

In diesem Artikel haben Sie gelernt, wie Sie Excel Dateien mit Java schützen und den Schutz aufheben. Außerdem haben Sie gesehen, wie Sie ein bestimmtes Arbeitsblatt in einer Excel Arbeitsmappe schützen und den Schutz aufheben. Weitere Informationen zur Java-Excel-Automatisierungs-API finden Sie unter Dokumentation.

Siehe auch