DOC, DOCX und ODT gehören zu den gängigsten und am weitesten verbreiteten Textverarbeitungsdateiformaten. Microsoft Word und OpenOffice Writer unterstützen diese Formate und werden zum Verfassen von Dokumenten verwendet. Daher müssen wir als Entwickler häufig Word-Dokumente innerhalb der Anwendungen programmgesteuert bearbeiten. In diesem Artikel werden wir diskutieren, wie Sie Word-Dokumente mit der Java-API für die Dokumentbearbeitung bearbeiten.
Folgende Themen werden in diesem Artikel behandelt:
Java-API für die Bearbeitung und Automatisierung von Word-Dokumenten
GroupDocs.Editor bietet eine Java-API für die Dokumentenbearbeitung und ermöglicht Entwicklern das Laden, Bearbeiten und Speichern verschiedener Dokumentformate mit WYSIWYG-HTML-Editoren. Zusätzlich zu den Textverarbeitungsdokumentformaten unterstützt die API die Bearbeitung von Tabellenkalkulationen, Präsentationen, HTML, XML, TXT, CSV und vielen anderen Formaten.
Herunterladen oder Konfigurieren
Sie können die JAR-Datei aus dem Download-Bereich herunterladen oder einfach das Repository und die Abhängigkeitskonfigurationen für die pom.xml Ihres **maven-basierten ** Java-Anwendungen.
<repository>
<id>GroupDocsJavaAPI</id>
<name>GroupDocs Java API</name>
<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-editor</artifactId>
<version>20.11</version>
</dependency>
Bearbeiten Sie Word-Dokumente in Java
Nachdem Sie die API eingerichtet haben, können Sie schnell zur Bearbeitung des Word-Dokuments übergehen. Mit den folgenden Schritten können Sie die Textverarbeitungsdokumente DOC/DOCX in Java bearbeiten.
- Laden Sie das Word-Dokument mit Editor.
- Rufen Sie das EditableDocument mit der Methode edit ab.
- Holen Sie sich das eingebettete HTML des geladenen DOC/DOCX-Dokuments.
- Bearbeiten Sie den Inhalt programmgesteuert oder mit einem beliebigen WYSIWYG-Editor.
- Konvertieren Sie den bearbeiteten Inhalt wieder in ein bearbeitbares Dokument.
- Speichern Sie das aktualisierte Dokument mit der entsprechenden save-Methode.
Der folgende Java-Code ermöglicht die Bearbeitung von Word-Dokumenten innerhalb der Anwendung.
// Bearbeiten Sie die Word DOC/DOCX-Dokumente in Java
Options.WordProcessingLoadOptions loadOptions = new WordProcessingLoadOptions();
loadOptions.setPassword("password-if-any");
Editor editor = new Editor("path/document.docx", loadOptions);
EditableDocument defaultWordProcessingDoc = editor.edit();
// Bearbeiten Sie entweder mit einem beliebigen WYSIWYG-Editor oder programmgesteuert
String allEmbeddedInsideString = defaultWordProcessingDoc.getEmbeddedHtml();
String allEmbeddedInsideStringEdited = allEmbeddedInsideString.replace("document", "edited document");
// Speichern Sie das bearbeitete Dokument
EditableDocument editedDoc = EditableDocument.fromMarkup(allEmbeddedInsideStringEdited, null);
WordProcessingSaveOptions saveOptions = new WordProcessingSaveOptions(WordProcessingFormats.Docx);
editor.save(editedDoc, "path/edited-document.docx", saveOptions);
Laden: Sie können beim Laden des Word-Dokuments zusätzliche Optionen anwenden; wie die Angabe des Passworts, wenn das Dokument geschützt ist.
Bearbeiten: Nach dem Laden können Sie das geladene Dokument nach Ihren Wünschen bearbeiten. Das obige Beispiel ersetzt alle Vorkommen des Wortes „Dokument“ durch das „bearbeitete Dokument“ in einem Word-Dokument.
Speichern: Beim Speichern des bearbeiteten Dokuments können Sie verschiedene Optionen festlegen. Zu diesen Optionen gehören; Paginierung, Festlegen eines Passworts, Speicheroptimierungseinstellungen und mehr.
Das Folgende ist die Ausgabe des obigen Codes.
Fazit
Zusammenfassend haben wir gelernt, Word-Dokumente in Java mit der Java-API zur Dokumentenbearbeitung zu bearbeiten. Sie können die API zusammen mit WYSIWYG-Editoren verwenden, um Ihre Dokumente visuell zu bearbeiten. Sie können Ihre eigene Java-Anwendung zur Dokumentenbearbeitung erstellen. Weitere Einzelheiten, Optionen und Beispiele finden Sie in der Dokumentation und im GitHub. Repository. Wenden Sie sich bei weiteren Fragen an den Support im Forum.