In verschiedenen Fällen müssen Sie ein MS Word Dokument in mehrere Dokumente aufteilen. Beispielsweise müssen Sie möglicherweise ein separates Dokument für jede Seite, jeden Abschnitt oder jede Sammlung von Seiten in einem Word Dokument erstellen. Um das Aufteilen von Dokumenten zu automatisieren, behandelt dieser Artikel, wie Sie MS Word DOCX programmgesteuert mit Java aufteilen. Die folgenden Abschnitte enthalten eine Schritt-für-Schritt-Anleitung und Codebeispiele für die oben genannten Aufteilungskriterien.
- Java API zum Aufteilen von Word Dokumenten
- Teilen Sie ein Word DOCX/DOC mit Java
- Verwenden Sie den Seitenbereich, um ein Word Dokument zu teilen
- Word Dokument nach Abschnitten aufteilen
- Erhalten Sie eine kostenlose API Lizenz
Java API zum Teilen von Word DOCX
Aspose.Words for Java ist eine leistungsstarke und funktionsreiche API zur Dokumentenbearbeitung, mit der Sie MS Word Dokumente erstellen und verarbeiten können. Zusätzlich zu den grundlegenden und erweiterten Word Automatisierungsfunktionen ermöglicht Ihnen die API auch, ein Word Dokument in mehrere Dokumente aufzuteilen. Sie können die API entweder herunterladen oder mithilfe der folgenden Konfigurationen in Ihrer Maven-basierten Anwendung 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-words</artifactId>
<version>21.1</version>
<classifier>jdk17</classifier>
</dependency>
Word Document Splitter - Hilfsklasse
Bevor Sie mit dem Aufteilen der Dokumente beginnen, müssen Sie Ihrem Projekt die folgende Hilfsklasse hinzufügen, die einen Java-Dokumentsplitter basierend auf Aspose.Words for Java implementiert. Nachdem Sie die Klasse hinzugefügt haben, können Sie mit dem Aufteilen der Dokumente fortfahren, indem Sie die Codebeispiele verwenden, die in den folgenden Abschnitten bereitgestellt werden.
Teilen Sie ein Word DOCX mit Java
Lassen Sie uns zunächst einen Blick darauf werfen, wie Sie ein MS Word Dokument seitenweise aufteilen. In diesem Fall wird jede Seite des Quelldokuments in ein separates Word Dokument umgewandelt. Im Folgenden sind die Schritte zum Teilen von Seiten eines Word Dokuments aufgeführt.
- Laden Sie das Word Dokument mit der Klasse Document.
- Erstellen Sie ein Objekt von PageSplitter und initialisieren Sie es mit dem Objekt Document.
- Blättern Sie durch die Seiten im Dokument.
- Verwenden Sie die Methode PageSplitter.getDocumentOfPage(Int pageIndex), um jede Seite in ein Document objekt abzurufen.
- Speichern Sie das Dokument mit der methode Document.save(String).
Das folgende Codebeispiel zeigt, wie Sie ein Word Dokument mit Java aufteilen.
// Vollständige Beispiele und Datendateien finden Sie unter https://github.com/aspose-words/Aspose.Words-for-Java
// Öffnen Sie ein Word Dokument
Document doc = new Document("Word.docx");
// Teilen Sie Knoten im Dokument in separate Seiten auf
DocumentPageSplitter splitter = new DocumentPageSplitter(doc);
// Speichern Sie jede Seite als separates Dokument
for (int page = 1; page <= doc.getPageCount(); page++)
{
Document pageDoc = splitter.getDocumentOfPage(page);
pageDoc.save("SplitDocumentByPage_" + page + ".docx");
}
Verwenden Sie den Seitenbereich, um Word DOCX in Java zu teilen
Sie können auch einen Seitenbereich definieren, den Sie vom Word-Quelldokument trennen möchten. Im Folgenden sind die Schritte zum Ausführen dieses Vorgangs aufgeführt.
- Laden Sie das Word Dokument mit der Klasse Document.
- Erstellen Sie ein Objekt von PageSplitter und initialisieren Sie es mit dem Objekt Document.
- Verwenden Sie die Methode PageSplitter.getDocumentOfPageRange(Int, Int), um eine Sammlung von Seiten in ein Document objekt abzurufen.
- Speichern Sie das Dokument mit der methode Document.save(String).
Das folgende Codebeispiel zeigt, wie Sie ein Word Dokument mithilfe von Java nach einem Seitenbereich aufteilen.
// Vollständige Beispiele und Datendateien finden Sie unter https://github.com/aspose-words/Aspose.Words-for-Java
// Öffnen Sie ein Word Dokument
Document doc = new Document("Word.docx");
// Teilen Sie Knoten im Dokument in separate Seiten auf
DocumentPageSplitter splitter = new DocumentPageSplitter(doc);
// Holen Sie sich einen Teil des Dokuments
Document pageDoc = splitter.getDocumentOfPageRange(3,6);
pageDoc.save("SplitDocumentByPageRange.docx");
Teilen Sie ein Word Dokument mit Java in Abschnitte auf
Aspose.Words for Java ermöglicht es Ihnen auch, ein Word Dokument nach Abschnittsumbrüchen aufzuteilen. Im Folgenden sind die Schritte zum Ausführen dieses Vorgangs aufgeführt.
- Laden Sie das Word Dokument mit der Klasse Document.
- Durchlaufen Sie jeden Abschnitt des Dokuments mit der methode Document.getSections().
- Klonen Sie Abschnitt in ein Section objekt mit der methode Document.getSections().get(index).deepClone().
- Erstellen Sie ein neues Dokument und fügen Sie dem Dokument geklonte Abschnitte mit der methode Document.getSections().add(Section) hinzu.
- Speichern Sie das Dokument mit der methode Document.save(String).
Das folgende Codebeispiel zeigt, wie Sie ein Word Dokument mithilfe von Java in Abschnitte aufteilen.
// Laden Sie ein Word-DOCX-Dokument
Document doc = new Document("word.docx");
for (int i = 0; i < doc.getSections().getCount(); i++) {
// Teilen Sie ein Dokument in kleinere Teile auf, in diesem Fall nach Abschnitten
Section section = doc.getSections().get(i).deepClone();
// Erstellen Sie ein neues Dokument
Document newDoc = new Document();
newDoc.getSections().clear();
// Abschnitt hinzufügen
Section newSection = (Section) newDoc.importNode(section, true);
newDoc.getSections().add(newSection);
// Speichern Sie jeden Abschnitt als separates Dokument
newDoc.save("splitted_" + i + ".docx");
}
Holen Sie sich eine kostenlose API Lizenz
Sie können eine kostenlose temporäre Lizenz erhalten, um die API ohne Evaluierungseinschränkungen zu testen.
Fazit
In diesem Artikel haben Sie gelernt, wie man MS Word DOCX/DOC mit Java aufteilt. Die Schritt-für-Schritt-Anleitung und die Codebeispiele haben gezeigt, wie Sie ein Word Dokument nach Abschnitten, Seiten oder einem Seitenbereich aufteilen. Weitere Informationen zur Java Word-API finden Sie unter Dokumentation.