.NET Karşılaştırma Sonuçlarından Meta Verileri Nasıl Çıkarılır – Tam Kılavuz
.NET uygulamalarında belge karşılaştırmalarıyla çalışırken, karşılaştırma sonuçlarından meta verileri nasıl çıkarılacağını merak edebilirsiniz. Dosya türü, sayfa sayısı ve belge boyutu gibi meta veriler, denetim izleri, performans ayarlamaları veya sadece son kullanıcılara faydalı bilgiler göstermek için kritik olabilir. Bu öğretici, GroupDocs.Comparison for .NET ile bu verileri verimli bir şekilde almanızı adım adım gösterir.
Hızlı Yanıtlar
- Karşılaştırma için ana sınıf nedir?
Comparerkaynak belgeyi yükler ve karşılaştırma motorunu çalıştırır. - Hangi yöntem meta verileri döndürür? Hedef belge üzerindeki
GetDocumentInfo()birIDocumentInfonesnesi döndürür. - .NET içinde belge boyutunu alabilir miyim? Evet –
IDocumentInfo‘unSizeözelliği boyutu bayt olarak döndürür. - Meta veri çıkarımı için lisansa ihtiyacım var mı? Üretim kullanımı için geçerli bir GroupDocs.Comparison lisansı gereklidir; ücretsiz deneme sürümü tüm meta veri özelliklerini destekler.
- API .NET 6 ile uyumlu mu? Kesinlikle – GroupDocs.Comparison .NET Framework 4.6.1+, .NET Core 2.0+, ve .NET 5/6+ destekler.
GetDocumentInfo() yöntemi belge meta verilerini içeren bir IDocumentInfo nesnesi döndürür.
Belge karşılaştırmasında meta veri çıkarımı nedir?
Meta veri çıkarımı, karşılaştırma işlemi sırasında kullanılan belgelerden dosya türü, sayfa sayısı ve dosya boyutu gibi tanımlayıcı bilgileri almayı sağlayan süreçtir. GroupDocs.Comparison bu verileri birleşik bir API aracılığıyla sunar, böylece kaydetmek, göstermek veya koşullu işleme için kullanmak kolaylaşır.
Neden karşılaştırma sonuçlarından meta veri çıkarılır?
Meta veri çıkarmak, ayrıntılı denetim günlükleri oluşturmanıza, dosyaları türlerine göre yönlendirmenize ve büyük belgeler için işleme stratejilerini ayarlamanıza olanak tanır. Dosya türü, sayfa sayısı ve boyutu bilerek uyum kurallarını uygulayabilir, işleme süresini tahmin edebilir ve kullanıcıların karşılaştırmaya başlamadan önce net bilgiler sunabilirsiniz.
Ön Koşullar
- GroupDocs.Comparison for .NET – Kütüphaneyi official releases page adresinden kurun.
Tüm sürümleri ayrıca GroupDocs releases page adresinde inceleyebilirsiniz. - Development Environment – Visual Studio, VS Code veya .NET 6+ destekleyen herhangi bir IDE.
- Sample Documents – Test için iki dosya (ör.
SOURCE.docxveTARGET.docx). API 50’den fazla belge formatı ile çalışır.
Ad Alanlarını İçe Aktarma
Aşağıdaki using yönergeleri, temel karşılaştırma motoru, dosya işleme yardımcı programları ve meta veri arayüzlerine erişim sağlar.
using System;
using System.IO;
using System.Linq;
using GroupDocs.Comparison;
using GroupDocs.Comparison.Interfaces;
Bu içe aktarmalar, herhangi bir GroupDocs nesnesi oluşturmadan önce gereklidir.
Karşılaştırma Sonuçlarından Meta Veri Nasıl Çıkarılır?
Comparer sınıfı kaynak belgeyi yükler ve karşılaştırma sürecini yönetir.
Meta verileri almak için önce bir Comparer örneğiyle kaynak belgeyi yükleyin, ardından hedef belge(leri) ekleyin. Karşılaştırma motoru başlatıldıktan sonra, her hedef üzerinde GetDocumentInfo() çağırarak dosya türü, sayfa sayısı ve boyut gibi özellikleri içeren bir IDocumentInfo nesnesi elde edin. Bu yaklaşım tüm desteklenen formatlarda tutarlı çalışır.
Adım 1: Kaynak Belge ile Comparer’ı Başlatma
Comparer, GroupDocs.Comparison içinde kaynak belgeyi yükleyen ve karşılaştırma işlemlerini yöneten temel sınıftır. Bir using bloğu kullanmak, tüm yönetilmeyen kaynakların otomatik olarak serbest bırakılmasını garanti eder.
using (Comparer comparer = new Comparer(File.OpenRead("SOURCE.docx")))
{
Pro İpucu:
Compareryapıcısına sadece dosya yolu değil, herhangi birStream(dosya, bellek, bulut) de geçirebilirsiniz.
Adım 2: Karşılaştırma İçin Hedef Belge Ekleme
Add() yöntemi ek akışları veya dosya yollarını kabul eder, böylece bir‑çok karşılaştırma yapılabilir.
comparer.Add(File.OpenRead("TARGET.docx"));
Önemli: Eklenen belgelerin sırası, son raporda değişikliklerin nasıl vurgulanacağını etkiler.
Adım 3: Sonuç Belgesinden Belge Bilgilerini Almak
IDocumentInfo, tüm desteklenen formatlarda dosya türü, sayfa sayısı ve boyut gibi belge meta verilerinin birleşik bir görünümünü sunar.
IDocumentInfo info = comparer.Targets.FirstOrDefault().GetDocumentInfo();
Veriyi Anlamak: Döndürülen nesne DOCX, PDF, XLSX ve PPTX için aynı şekilde çalışır, bu yüzden format‑bağımsız kod yazabilirsiniz.
Adım 4: Belge Bilgilerini Görüntüleme
IDocumentInfo örneğine sahip olduğunuzda, özelliklerini kaydedebilir, depolayabilir veya gösterebilirsiniz.
Console.WriteLine("\nFile type: {0}\nNumber of pages: {1}\nDocument size: {2} bytes", info.FileType, info.PageCount, info.Size);
En yaygın kullanılan üç özellik şunlardır:
- FileType – örn.,
DOCX,PDF,XLSX. - PageCount – toplam sayfa veya slayt.
- Size – bayt cinsinden dosya boyutu (depolama hesaplamaları için yararlıdır).
.NET içinde Belge Boyutu Nasıl Alınır?
Size özelliği dosya boyutunu bayt olarak döndürür.
Belge boyutuna, IDocumentInfo örneği üzerinden Size özelliğiyle doğrudan erişilebilir. Bu özellik, orijinal dosyanın tam bayt sayısını döndürür, böylece görüntüleme veya depolama hesaplamaları için kilobayt veya megabayta dönüştürebilirsiniz. İşlenmiş bir sürümün değil, kaynak dosyanın boyutunu yansıtır.
long sizeInBytes = documentInfo.Size;
double sizeInMegabytes = sizeInBytes / (1024.0 * 1024.0);
Console.WriteLine($"Document size: {sizeInMegabytes:F2} MB");
Not:
Sizedeğeri, iç işlem veya sıkıştırma sonrası değil, orijinal dosya boyutunu yansıtır.
Yaygın Kullanım Durumları ve Pratik Uygulamalar
- Batch Processing: Dosya türünü kullanarak DOCX dosyalarını Word‑özel bir iş akışına, PDF’leri ise PDF‑optimize bir boru hattına yönlendirin.
- Storage Management: 10 MB’den büyük belgeleri otomatik olarak soğuk‑depolama kutusuna arşivleyin.
- User Feedback: Karşılaştırmadan önce sayfa sayısını ve boyutu göstererek işleme süresi için gerçekçi beklentiler oluşturun.
- Quality Assurance: Yüklenen dosyaların eksiksiz olduğunu, beklenen ve gerçek sayfa sayısını karşılaştırarak doğrulayın.
Yaygın Sorunların Giderilmesi
- File Access Errors: Okuma izinlerini doğrulayın ve geliştirme sırasında mutlak yollar kullanın.
- Memory Pressure with Large Files: Tüm dosyayı belleğe yüklemek yerine akış (
File.OpenRead) kullanın. - Null Reference Exceptions: Hedef eklenmemişse
FirstOrDefault()nulldöndürebilir;GetDocumentInfo()‘a erişmeden önce her zaman kontrol edin.
var target = comparer.Targets.FirstOrDefault();
if (target != null)
{
var info = target.GetDocumentInfo();
// Use info safely
}
else
{
Console.WriteLine("No target document was added.");
}
- Limited Metadata for Plain Text:
.txtgibi formatlar anlamlı birPageCountsağlamayabilir. Eksik değerlere karşı önlem alın.
Performans Düşünceleri
- Stream Management: Dosya tanıtıcılarını hızlıca serbest bırakmak için akışları her zaman
usingifadeleriyle sarmalayın. - Caching: Tekrarlanan çıkarımı önlemek için sık erişilen meta verileri bir önbellekte saklayın.
- Batch Operations: İş yükünü azaltmak ve verimliliği artırmak için belgeleri gruplar halinde işleyin.
Üretim Kullanımı için En İyi Uygulamalar
- Robust Error Handling: Meta veri çıkarımını try‑catch blokları içinde tutarak bozuk veya desteklenmeyen dosyaları sorunsuz şekilde ele alın.
- Comprehensive Logging: Her karşılaştırma için belge türünü, boyutunu ve sayfa sayısını kaydederek sorun giderme ve denetim uyumluluğuna yardımcı olun.
- Security Hygiene: UI mesajlarında tam dosya yollarını veya iç sunucu detaylarını ifşa etmeyin.
- Resource Disposal: Özellikle çok sayıda eşzamanlı istek işleyen web servislerinde
Comparerörneklerini hızlıca serbest bırakın.
İleri Senaryolar
Birden Çok Hedef Belge
Bir kaynağı birden çok hedefe karşılaştırıyorsanız, Targets koleksiyonunda döngü yaparak her birinden meta veri çıkarın.
foreach (var target in comparer.Targets)
{
IDocumentInfo info = target.GetDocumentInfo();
// Process each target's information
}
Meta Veriye Dayalı Koşullu İşleme
if (info.Size > 5 * 1024 * 1024) // larger than 5 MB
{
// Apply a different comparison setting or queue for background processing
}
Meta Veriyi Veritabanına Depolama
FileType, PageCount ve Size değerlerini ilişkisel bir tabloya kaydederek binlerce karşılaştırma için raporlama ve analiz yapmayı mümkün kılın.
Sık Sorulan Sorular
S: GroupDocs.Comparison for .NET çeşitli belge formatlarıyla uyumlu mu?
C: Evet, DOCX, PDF, PPTX, XLSX, TXT ve daha birçok format dahil 50+ formatı destekler ve bunlar arasında tutarlı meta veri çıkarımı sağlar.
S: Meta veri çıkarımını etkilemeden karşılaştırma ayarlarını özelleştirebilir miyim?
C: Kesinlikle. Hassasiyet, değişiklik türleri ve çıktı formatı gibi ayarlar GetDocumentInfo() çağrısından bağımsızdır.
S: Değerlendirme için kullanabileceğim bir deneme sürümü var mı?
C: Evet, GroupDocs releases page adresinden ücretsiz deneme sürümünü indirin. Deneme sürümü tam meta veri çıkarım özelliklerini içerir.
S: Uygulama soruları için nereden destek alabilirim?
C: Topluluk yardımı ve GroupDocs ekibinden resmi destek için GroupDocs.Comparison forum adresini kullanın.
S: Üretim dağıtımları için hangi lisans seçenekleri mevcuttur?
C: GroupDocs geliştirici, site ve OEM lisansları sunar. Satın alma seçenekleri GroupDocs purchase page adresinde listelenmiştir.
Last Updated: 2026-06-15
Tested With: GroupDocs.Comparison 6.0 for .NET
Author: GroupDocs
var targetDoc = comparer.Targets.FirstOrDefault();
if (targetDoc != null)
{
IDocumentInfo info = targetDoc.GetDocumentInfo();
// Process document info
}