Kelime işlem belgeleri, sözleşmeler, anlaşmalar, evraklar ve diğer birçok resmi belgeyi hazırlamanın en yaygın yoludur. İki Word belgesini karşılaştırmanız ve birleştirmeniz gerekiyorsa, tıpkı Microsoft Word’ün değişiklikleri izle seçeneği gibi, bunu .NET uygulamalarımızda programlı olarak yapabiliriz. Bu yazıda, iki Word belgesini nasıl karşılaştıracağımızı tartışacağız ve C# kullanarak belirlenen farklılıkları vurgulayacağız. Ek olarak, parola korumalı belgeleri nasıl karşılaştıracağımızı, değişiklikleri kabul edip reddedeceğimizi ve ikiden fazla belgeyi C# örnekleriyle nasıl karşılaştıracağımıza bakacağız.

.NET API kullanarak farkları bulmak için Word Belgelerini karşılaştırın

Aşağıdaki konular burada tartışılmaktadır:

Word Belgelerini Karşılaştırmak için .NET API

GroupDocs.Comparison, .NET uygulaması içinde birden çok dosya biçimindeki çeşitli belgeleri karşılaştırmaya ve ardından birleştirmeye izin veren bir .NET API sağlar. Word belgelerini karşılaştırmak için .NET API’sini, yani GroupDocs.Comparison for .NET kullanacağım.

İndirilenler bölümünden DLL’leri veya MSI yükleyicisini indirebilir veya NuGet aracılığıyla .NET uygulamanıza API’yi yükleyebilirsiniz.

PM> Install-Package GroupDocs.Comparison

C# kullanarak Word Belgelerini Karşılaştırın

Bir belgenin iki versiyonuna sahipseniz, farklılıkları (eklemeler, çıkarmalar) bulmak için belgeleri karşılaştırabilir ve tüm değişiklikleri gösteren yeni bir belge oluşturabilirsiniz. Aşağıda, herhangi iki Word belgesini karşılaştırma ve farklılıkları vurgulama adımları yer almaktadır.

  • Comparer sınıfını kullanarak ilk Word belgesini yükleyin.
  • Add() yöntemini kullanarak ikinci dosyayı Comparer’a ekleyin.
  • Compare() yöntemini çağırarak değişikliklerin özetini karşılaştırın ve alın.

Aşağıdaki C# kodu, Word belgelerinin nasıl karşılaştırılacağını ve sonuç belgesindeki değişikliklerin nasıl alınacağını gösterir.

/*
 * C# kullanarak İki Word Belgesini Karşılaştırın ve Değişiklikleri Vurgulayın
 */
using (Comparer comparer = new Comparer("path/document.docx"))
{
    comparer.Add("path/document-ver2.docx");
    comparer.Compare("path/compared-result.docx");
}

C# kullanarak Word Belgelerinde Belirlenen Değişiklikleri Kabul Etme veya Reddetme

MS Word’ün değişiklikleri izle seçeneğine benzer şekilde, tanımlanan her değişikliği kabul edebilir veya reddedebilirsiniz. Aşağıda, Word belgelerinde tanımlanan değişiklikleri karşılaştırmak ve ardından kabul etmek veya reddetmek için gereken adımlar yer almaktadır.

  • Kaynak belgeyi yükleyin ve Comparer sınıfını kullanarak hedef Word belgelerini ekleyin.
  • Karşılaştır() yöntemini kullanarak yüklenen belgelerin karşılaştırmasını yapın.
  • GetChanges() yöntemini kullanarak tanımlanan değişiklikleri alın.
  • Artık değişiklikleri gözden geçirebilir ve her değişikliğin ComparisonAction ayarını yapabilirsiniz.
    • Her değişiklik için Kabul Et veya Reddet’i seçebilirsiniz.
  • Değişikliklerle işiniz bittiğinde, uygulanan değişikliklere sahip sonuç belgesini almak için ApplyChanges() yöntemini çağırın.

Aşağıdaki C# kaynak kodu, iki Word belgesini karşılaştırır ve ardından tanımlanmış bir değişikliği kabul eder ve ardından diğerini reddeder.

/*
 * C# kullanarak Word belgelerini karşılaştırarak tanımlanan değişiklikleri kabul edin ve reddedin
 */
using (Comparer comparer = new Comparer("path/document-1.docx"))
{
    comparer.Add("path/document-2.docx");
    comparer.Compare();
    ChangeInfo[] changes = comparer.GetChanges();
    
    // Tanımlanan ilk değişikliği reddetme ve sonuç belgesine eklenmeyecek
    changes[0].ComparisonAction = ComparisonAction.Reject;
    comparer.ApplyChanges("path/rejected-change-result.docx", new ApplyChangeOptions { Changes = changes, SaveOriginalState = true });

    changes = comparer.GetChanges();
    changes[0].ComparisonAction = ComparisonAction.Accept;
    comparer.ApplyChanges("path/accepted-change-result.docx", new ApplyChangeOptions { Changes = changes });
}

C# Kullanarak İkiden Fazla Belgeyi Karşılaştırın

Benzer şekilde, ikiden fazla belge tek seferde karşılaştırılabilir. Aşağıdakiler, birden çok Word belgesini farklılıklar açısından karşılaştırma ve belirlenen değişiklikleri vurgulama adımlarıdır.

  • Comparer sınıfını kullanarak ilk Word belgesini yükleyin.
  • Add() yöntemini kullanarak Comparer’a diğer belgeleri eklemeye devam edin.
  • Değişiklikleri ve değişikliklerin özetini almak için Compare() yöntemini çağırın.

Aşağıdaki C# kodu, ikiden fazla Word belgesinin nasıl karşılaştırılacağını ve ortaya çıkan belgedeki değişikliklerin nasıl alınacağını gösterir.

/*
 * C# kullanarak Birden Çok Word Belgesini Karşılaştırın
 */
using (Comparer comparer = new Comparer("path/document-1.docx"))
{
    comparer.Add("path/document-2.docx");
    comparer.Add("path/document-3.docx");
    comparer.Add("path/document-4.docx");

    comparer.Compare("path/compare-result.docx");
}

C# kullanarak Parola Korumalı Word Belgelerini Karşılaştırın

Belgeleriniz parola korumalıysa, belgeleri yüklerken parolalarını girmeniz yeterlidir. Aşağıdaki adımlar, C# kullanarak parola korumalı belgelerin içeriğini nasıl karşılaştırabileceğimizi göstermektedir.

  • Parolayı sağlayarak kaynak ve hedef belgeler için yükleme seçeneklerini hazırlayın.
  • Comparer sınıfını kullanarak kaynak belgeyi yükleyin.
  • Hazırlanan yükleme seçeneklerini kullanarak hedef belgeyi Comparer’a ekleyin.
  • Compare() yöntemini çağırarak farkların özetini alın.

Aşağıdaki C# kod örneği, iki parola korumalı Word dosyasını karşılaştırır ve farklılıkları vurgulayan sonuç belgesini oluşturur.

/*
 * C# kullanarak Parola Korumalı Word Belgelerini Karşılaştırın
 */
using (Comparer comparer = new Comparer("path/protected-document-1.docx", new LoadOptions(){ Password = "SourceFilePassword" }))
{
    comparer.Add("path/protected-document-2.docx", new LoadOptions() { Password = "TargetFilePassword" });
    comparer.Compare("path/compared-protected-docs-result.docx");
}

Ücretsiz API Lisansı Alın

API’yi değerlendirme sınırlamaları olmadan kullanmak için ücretsiz bir geçici lisans alabilirsiniz.

Çözüm

Sonuç olarak, C# kullanarak iki veya daha fazla Word belgesini karşılaştırmayı öğrendik. Ayrıca, farklılıkları vurguladıktan sonra, belirlenen değişiklikleri programatik olarak kabul etmeyi ve reddetmeyi öğrendik. Sonunda, .NET uygulamalarında parola korumalı Word belgelerini nasıl karşılaştırabileceğimizi de tartıştık.

Karşılaştırma hassasiyetini ayarlamak, yalnızca özet sayfasını göstermek, boşlukları yok saymak ve çok daha fazlası gibi birçok başka karşılaştırma sonuçlarını kontrol etmek için özelleştirmeler vardır. GroupDocs.Comparison for .NET hakkında daha fazla bilgi edinin. Çeşitli desteklenen belge biçimleri için kendi belge karşılaştırma uygulamalarınızı oluşturmaya başlamak üzere belgelerini ziyaret edin. Sorularınız için forum aracılığıyla bize ulaşın.

Ayrıca bakınız