Wir haben bereits den Vergleich zweier Word-Dokumente besprochen, auch wenn sie passwortgeschützt waren. Was ist, wenn es mehr als zwei Dateien zum Vergleichen gibt? In diesem Artikel werden wir uns ansehen, wie Sie mehrere Word-Dokumente in Java vergleichen. Außerdem lernen wir, wie man jede der identifizierten Änderungen akzeptiert oder ablehnt, um die gewünschte Ausgabe zu erhalten.

Vergleichen Sie mehrere Word-Dokumente, um Unterschiede in Java zu finden

Die kürzlich erschienene kurze Artikelserie behandelte bereits die Java-Methode, wie man:

Am Ende dieses Artikels werden Sie auch ein gutes Verständnis dafür haben, wie Sie:

Wenn Ihre Entwicklungsumgebung noch nicht bereit ist, den Vergleich durchzuführen, bereiten wir ihn schnell vor.

Java-Bibliothek zum Vergleichen von zwei oder mehr Word-Dokumenten – Setup

Ich hoffe, Sie sind inzwischen mit der Dokumentenvergleichs-Java-API vertraut. Ich werde dasselbe GroupDocs.Comparison verwenden, um voranzukommen. Sie können die Entwicklungsumgebung Ihrer Maven-basierten Anwendungen mit den folgenden Konfigurationen herunterladen oder schnell überprüfen:

<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-comparison</artifactId>
        <version>22.3</version> 
</dependency>

Lassen Sie uns nun zum Ziel springen und mit dem Vergleich mehrerer Word-Dateien beginnen.

Vergleichen Sie mehr als zwei Word-Dateien in Java

Der Vergleich mehrerer Dateien unterscheidet sich nicht so stark vom Vergleich nur zweier Dateien. Fügen Sie dem Vergleicher einfach weitere Dateien hinzu und klicken Sie schließlich auf Vergleichen, wie Sie es beim Vergleichen von zwei Dateien tun. Im Folgenden finden Sie die Schritte zum Vergleichen von mehr als zwei Word-Dokumenten in Java, um die Änderungen zu identifizieren und die gefundenen Unterschiede hervorzuheben.

  • Laden Sie die erste DOC/DOCX-Datei mit der Klasse Comparer.
  • Fügen Sie die zweite Datei mit der Methode add() zu Comparer hinzu.
  • Fügen Sie weitere Dokumente mit denselben/ähnlichen add()-Methoden zum Vergleich hinzu.
  • Rufen Sie die Compare-Methode auf, um den Vergleich durchzuführen und die Zusammenfassung der identifizierten Änderungen abzurufen.

Das folgende Beispiel zeigt, wie Sie mehrere Word-Dateien in Java vergleichen und die Änderungen im resultierenden Dokument erhalten.

/*
 * Vergleichen Sie mehrere Word-Dokumente
 */
try (Comparer comparer = new Comparer("path/document-1.docx")) {
    comparer.add("path/document-2.docx");
    comparer.add("path/document-3.docx");
    final Path resultPath = comparer.compare("path/compared-result.docx");
}

Identifizierte Änderungen in Word-Dateien mit Java akzeptieren oder ablehnen

Ziemlich sicher, dass Sie mit der Funktion zum Nachverfolgen von Änderungen in Microsoft Word vertraut sind. Auf ähnliche Weise können Sie jede der identifizierten Änderungen für das endgültige Ausgabedokument programmgesteuert akzeptieren oder ablehnen. Die folgenden Schritte zeigen, wie Sie die identifizierten Änderungen in den DOC/DOCX-Dateien von Word-Dokumenten vergleichen und dann akzeptieren oder ablehnen können.

  • Laden Sie das DOC/DOCX-Quelldokument mit der Klasse Comparer.
  • Fügen Sie das zweite Word-Dokument mit der add()-Methode zum Comparer hinzu.
  • Vergleichen Sie die geladenen Dateien mit der Methode Compare().
  • Rufen Sie die Sammlung der identifizierten Unterschiede mit der Methode getChanges() ab.
  • Durchlaufen Sie nun die Änderungen, analysieren Sie sie und stellen Sie dann die ComparisonAction jeder Änderung entsprechend ein.
    • Legen Sie es auf Akzeptieren fest, um der Änderung zuzustimmen.
    • Setzen Sie es auf Ablehnen, um die Änderung abzulehnen.
  • Rufen Sie die Methode applyChanges() auf, um das geänderte Dokument mit übernommenen Änderungen abzurufen.

Das folgende Java-Code-Snippet vergleicht zwei DOCX-Dokumente und zeigt dann, wie identifizierte Änderungen akzeptiert und abgelehnt werden.

/*
 * Word-Dokumente vergleichen - Änderungen in Java akzeptieren oder ablehnen
 */
try (Comparer comparer = new Comparer("path/document-1.docx")) {
    comparer.add("path/document-2.docx");
    
    final Path resultPath = comparer.compare("path/compared-result.docx");
    ChangeInfo[] changes = comparer.getChanges();

    changes[0].setComparisonAction(ComparisonAction.REJECT);
    changes[1].setComparisonAction(ComparisonAction.ACCEPT);
    comparer.applyChanges(resultPath, new ApplyChangeOptions(changes));
}

Holen Sie sich eine kostenlose API-Lizenz

Sie können eine kostenlose temporäre Lizenz erhalten, um die API ohne die Evaluierungseinschränkungen zu verwenden, um mehrere Word-Dokumente zu vergleichen.

Erstellen Sie Ihre eigene Vergleichsanwendung

Hier sind einige wichtige Links, die Ihnen beim Erstellen Ihrer eigenen Dokumentvergleichsanwendung helfen werden.

Merkmale | Documentation | API Reference | Running Examples – Source Code | Support | Release Notes

Siehe auch