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:
- Bandingkan file Word dan tunjukkan perbedaannya.
- Bandingkan file Word menggunakan aliran.
- Terima atau tolak perubahan yang teridentifikasi dalam file Word.
- Bandingkan file teks dan sorot perbedaannya.
- Bandingkan file PDF menggunakan Java.
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.
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 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.
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.