Setelah melalui artikel ini, kita akan dapat membandingkan file teks, file Word, file PDF, dan dokumen lainnya dalam aplikasi berbasis Java. Dengan menggunakan fitur ini, kita dapat membandingkan invoice, kontrak, presentasi, desain AutoCAD, daftar harga, atau file pemrograman. Kami juga memiliki hak istimewa untuk menyoroti perubahan yang teridentifikasi dan memiliki opsi untuk menerima atau menolak perubahan apa pun. Kami bahkan dapat membuat [alat perbandingan dokumen] kami sendiri 2 mirip dengan yang diluncurkan oleh GroupDocs, menggunakan API perbandingan dokumen untuk Java.

Di bawah ini, Anda akan membahas topik-topik berikut:

API Perbandingan Dokumen Java

Sebagai prasyarat, Anda bisa mendapatkan GroupDocs.Comparison for Java dari bagian downloads. Juga, Anda bisa menambahkan yang berikut ini di pom.xml Anda untuk aplikasi berbasis maven:

Repositori & Ketergantungan

<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>20.4</version> 
</dependency>

Bandingkan File Word dan Tampilkan Perbedaan menggunakan Java

Langkah-langkah di bawah ini akan menunjukkan kepada Anda untuk membandingkan dua dokumen Word hanya dalam beberapa baris kode Java. Hasilnya, Anda akan mendapatkan dokumen hasil yang akan menyoroti perubahan yang teridentifikasi.

  • Inisialisasi objek Comparer dengan jalur dokumen sumber.
  • Tambahkan dokumen kedua untuk dibandingkan menggunakan metode add.
  • Panggil metode bandingkan untuk mendapatkan hasil perbandingan. Metode bandingkan mengambil nama dokumen keluaran sebagai parameter.
// Compare two Word files from the provided location on disk
Comparer comparer = new Comparer("source.docx");
try {
    comparer.add("target.docx");
    comparer.compare("comparison.docx");
}
finally {
    comparer.dispose();
}

Di sini saya menampilkan dokumen Word yang dihasilkan oleh kode di atas, dan berisi perbedaan yang disorot dari dua dokumen Word yang dibandingkan. Konten yang dihapus akan ditandai dengan warna MERAH, konten yang ditambahkan akan ditampilkan dengan warna Biru, namun Hijau menunjukkan konten yang dimodifikasi.

kata-file-teks-perbandingan-dan-tampilkan-dirffer

Bandingkan File Word untuk Teks menggunakan Stream

Anda juga dapat meneruskan dokumen sebagai aliran ke kelas Pembanding untuk membandingkannya dengan dokumen kedua. Berikut adalah kode Java untuk memberi Anda ide yang jelas:

// Compare two Word file using Stream
Comparer comparer = new Comparer(new FileInputStream("source.docx"));
try {
    comparer.add(new FileInputStream("target.docx"));
    comparer.compare(new FileOutputStream("result.docx"));
} 
finally {
    comparer.dispose();
}

Terima atau Tolak Perubahan Dibandingkan di File Word menggunakan Java

Setelah berhasil menyoroti perbedaan yang teridentifikasi, Anda memiliki opsi untuk menerima atau menolak perubahan apa pun. Sebagai contoh saja, saya menerima dan menolak perubahan sebagai alternatif. Anda dapat menampilkan setiap perubahan satu per satu dengan kode yang sama dan mengambil keputusan untuk menerima/menolak setiap perubahan sesuai dengan kebutuhan Anda.

// Accept or Reject the identified changes of Word document in Java
Comparer comparer = new Comparer(source);
try {
    comparer.add(target);
    comparer.compare();
    ChangeInfo[] changes = comparer.getChanges();
    System.out.println("changes.length: " + changes.length + ".");
    // Accept or Reject the changes
    for (int n = 0; n < changes.length; n++) {
    	if (n % 2 == 0) {
    		changes[n].setComparisonAction(ComparisonAction.ACCEPT);
    	}
    	else {
    		changes[n].setComparisonAction(ComparisonAction.REJECT);
    	}
    }
    // Apply your decisions to get the resultant document.
    comparer.applyChanges(outputFileName, new SaveOptions(), new ApplyChangeOptions(changes));
}
finally {
    comparer.dispose();
}

Bandingkan File Teks dan Tampilkan Perbedaan menggunakan Java

Menggunakan kelas Pembanding, kami juga dapat membandingkan file teks apa pun. Di bawah ini adalah kode serupa untuk membandingkan dua file teks di Java. Langkah-langkahnya persis sama dengan membandingkan dua dokumen lainnya:

  • Mulailah dengan meneruskan file teks ke kelas Comparer.
  • Tambahkan file kedua menggunakan metode add.
  • Panggil metode bandingkan.
// Compare two text files to identify and highlight changes.
Comparer comparer = new Comparer("source.txt");
try {
    comparer.add("target.txt");
    comparer.compare("comparison.txt");
}
finally {
    comparer.dispose();
}

Berikut adalah dokumen keluaran yang menunjukkan hasil perbandingan pencocokan dua file teks menggunakan kode di atas.

Bandingkan File Teks menggunakan Java

Bandingkan File PDF untuk Perbedaan Teks menggunakan Java

Kita dapat membandingkan file PDF menggunakan kode yang sama di atas, dan hanya dengan mengubah ekstensi file menjadi “.pdf”. Sekadar menyebutkan, kode di bawah ini membandingkan dua file pdf dan menunjukkan perbedaan di Java.

// Compare two PDF file using Stream
Comparer comparer = new Comparer(new FileInputStream("source.pdf"));
comparer.add(new FileInputStream("target.pdf"));
comparer.compare(new FileOutputStream("result.pdf"));

Di bawah ini adalah hasil setelah membandingkan file PDF.

Perbandingan Teks File PDF

Lihat juga

Banyak contoh sumber terbuka lainnya tersedia untuk umum di Repositori GitHub. Anda dapat mengunduh dan menjalankan contoh dengan cepat menggunakan panduan memulai. Jika ada pertanyaan, lihat dokumentasi atau hubungi kami kapan saja di forum.