Java'daki kelime belgelerini karşılaştırın

MS Word belgelerinin karşılaştırılması, bir belgenin iki versiyonu arasındaki farkı bilmek için yapılır. MS Word, iki belgenin içeriğini karşılaştırmak için yerleşik bir seçenek sunar. Ancak artan belge sayısı ile belge karşılaştırmasını manuel olarak yapmak zorlaşmaktadır. Bu işlemi otomatikleştirmek için bu makale, Java kullanılarak iki MS Word (DOC/DOCX) belgesinin nasıl karşılaştırılacağını kapsar.

MS Word Belgelerini Karşılaştırmak İçin Java API

Aspose.Words for Java, MS Word belgeleri oluşturmanıza, okumanıza, değiştirmenize ve dönüştürmenize olanak tanıyan güçlü bir belge işleme API’sidir. Ayrıca, içeriğin biçimlendirmesini göz önünde bulundurarak veya göz ardı ederek iki Word belgesini karşılaştırmanıza olanak tanır. API’yi indirebilir veya Maven yapılandırmalarını kullanarak yüklemesini sağlayabilirsiniz.

<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>20.9</version>
    <classifier>jdk17</classifier>
</dependency>

Java kullanarak MS Word Belgelerini karşılaştırın

Aşağıda, Aspose.Words for Java API kullanarak basit bir Word belgesi karşılaştırması gerçekleştirme adımları yer almaktadır.

Aşağıdaki kod örneği, Java kullanılarak iki MS Word belgesinin nasıl karşılaştırılacağını gösterir.

Document docA = new Document(dataDir + "DocumentA.doc");
Document docB = new Document(dataDir + "DocumentB.doc");
docA.compare(docB, "user", new Date()); // docA now contains changes as revisions

Java Word Belgesi Karşılaştırması - Biçimlendirmeyi Yoksay

Belgelerin içeriğe farklı biçimlendirme uygulandığı durumlar olabilir. Bu gibi durumlarda, metni yalnızca biçimlendirmeyi, üst bilgileri/alt bilgileri, dipnotları, tabloları, yorumları vb.

Aşağıdaki kod örneği, Java kullanarak içeriğin biçimlendirmesini göz ardı ederek MS Word belgelerinin nasıl karşılaştırılacağını gösterir.

// Eksiksiz örnekler ve veri dosyaları için lütfen https://github.com/aspose-words/Aspose.Words-for-Java adresine gidin.
String dataDir = Utils.getDataDir(CompareTwoWordDocumentswithCompareOptions.class);

com.aspose.words.Document docA = new com.aspose.words.Document(dataDir + "DocumentA.doc");
com.aspose.words.Document docB = new com.aspose.words.Document(dataDir + "DocumentB.doc");

com.aspose.words.CompareOptions options = new com.aspose.words.CompareOptions();
options.setIgnoreFormatting(true);
options.setIgnoreHeadersAndFooters(true);
options.setIgnoreCaseChanges(true);
options.setIgnoreTables(true);
options.setIgnoreFields(true);
options.setIgnoreComments(true);
options.setIgnoreTextboxes(true);
options.setIgnoreFootnotes(true);

// DocA artık değişiklikleri revizyon olarak içeriyor.
docA.compare(docB, "user", new Date(), options);
if (docA.getRevisions().getCount() == 0)
    System.out.println("Documents are equal");
else
    System.out.println("Documents are not equal");

Karşılaştırma Farkları İçin Hedef Word Belgesi Belirleyin

Aspose.Words for Java, karşılaştırma sırasında kaynak Word belgesini belirtmenize de izin verir. Bunun için MS Word’ün “Değişiklikleri göster” seçeneği ile ilgili olan CompareOptions.setTarget() özelliğini kullanabilirsiniz. Aşağıdaki kod örneği, karşılaştırmada hedef belgenin nasıl belirtileceğini gösterir.

Document docA = new Document(dataDir + "TestFile.doc");
Document docB = new Document(dataDir + "TestFile - Copy.doc");

CompareOptions options = new CompareOptions();
options.setIgnoreFormatting(true);
// Microsoft Word'ün "Belgeleri Karşılaştır" iletişim kutusundaki "Değişiklikleri göster" seçeneğiyle ilgilidir.
options.setTarget(ComparisonTargetType.NEW);

docA.compare(docB, "user", new Date(), options);

Java’da Word Dosyalarını Karşılaştırmak İçin Ayrıntı Düzeyini Ayarlayın

İki MS Word belgesini karşılaştırırken, değişikliklerin ayrıntı düzeyini de ayarlayabilirsiniz. Bu, CompareOptions.setGranularity() özelliği kullanılarak yapılabilir. Olası ayrıntı düzeyi seçenekleri aşağıdadır.

Aşağıdaki kod örneği, Java kullanarak MS Word belgelerini karşılaştırırken ayrıntı düzeyinin nasıl ayarlanacağını gösterir.

DocumentBuilder builderA = new DocumentBuilder(new Document());
DocumentBuilder builderB = new DocumentBuilder(new Document());

builderA.writeln("This is A simple word");
builderB.writeln("This is B simple words");

CompareOptions co = new CompareOptions();
co.setGranularity(Granularity.CHAR_LEVEL);

builderA.getDocument().compare(builderB.getDocument(), "author", new Date(), co);

Çözüm

Bu yazıda, Java kullanarak çeşitli senaryolarda iki MS Word belgesini nasıl karşılaştıracağınızı gördünüz. Belgeleri kullanarak Aspose.Words for Java hakkında daha fazlasını keşfedebilirsiniz.

Ücretsiz deneyin

Aspose, API’lerini ücretsiz olarak denemeniz için bir geçici lisans sunar. Aspose.Words for Java’yı değerlendirmek için sizinkini alabilirsiniz.

Ayrıca bakınız

C# .NET’te DOC/DOCX’i JPG’ye dönüştürünJava’da DOC/DOCX’i JPG’ye dönüştürünC# .NET’te DOC/DOCX’i PNG’ye dönüştürün
Java’da DOC/DOCX’i PNG’ye dönüştürünC# dilinde DOCX’i HTML’ye dönüştürünPython’da DOCX’i TXT’ye dönüştürün
Java Kullanarak MS Word Belgelerini BirleştirmeJava’da Zengin Word Belgeleri OluşturunJava’da MS Word DOC/DOCX’ten PDF’e
C# .NET’te PNG’den Word’eC# .NET’te JPG’den Word’eC# dilinde Görüntüden Word’e
C# dilinde Word’den HTML’yeJava’da Word DOCX’ten Markdown’aJava’daki Word DOC’tan Görüntüleri Çıkarın
Java’da Word DOC’dan Markdown’aC# dilinde Word DOC DOCX’ten Markdown’aJava’daki Word Belgelerinden Metin Çıkarın
C# .NET kullanarak MS Word Belgelerini BirleştirmeC# dilinde Word DOC’dan PNG, JPEG, BMP, GIF veya TIFF’eWord DOC’u Java’da PNG, JPEG, BMP, GIF veya TIFF’e dönüştürme