Dosya Formatını Algıla ve Format Uyumluluğunu Kontrol Et

Bazen bir belgeyi açmadan önce formatının belirlenmesi gerekebilir çünkü dosya uzantısı, dosya içeriğinin uygun olduğunu garanti etmez. Örneğin Crystal Reports’un çoğu zaman belgeleri RTF formatında çıkardığı ancak bunlara .doc uzantısını verdiği bilinmektedir.

Aspose.Words, dosyanın gerçek içeriğinin ne olduğundan emin değilseniz bir istisnayı önlemek için dosya türü hakkında bilgi edinme yeteneği sağlar.

İstisnasız Dosya Formatını Algıla

Çeşitli dosya formatlarında birden fazla belgeyle uğraşırken, Aspose.Words tarafından işlenebilen dosyaları işlenemeyenlerden ayırmanız gerekebilir. Ayrıca bazı belgelerin neden işlenemediğini de bilmek isteyebilirsiniz.

Bir Document nesnesine dosya yüklemeye çalışırsanız ve Aspose.Words, dosya formatını tanıyamazsa veya format desteklenmiyorsa, Aspose.Words bir istisna oluşturacaktır. Bu istisnaları yakalayabilir ve analiz edebilirsiniz, ancak Aspose.Words aynı zamanda olası istisnaları olan bir belgeyi yüklemeden dosya formatını hızlı bir şekilde belirlememize olanak tanıyan detect_file_format yöntemini de sağlar. Bu yöntem, dosya türüyle ilgili algılanan bilgileri içeren bir FileFormatInfo nesnesi döndürür.

Dosya Formatı Uyumluluğunu Kontrol Edin

Seçilen klasördeki tüm dosyaların format uyumluluğunu kontrol edebilir ve bunları formata göre ilgili alt klasörlere sıralayabiliriz.

Bir klasördeki içeriklerle uğraştığımız için yapmamız gereken ilk şey, işletim sistemi modülünün listedir yöntemini kullanarak bu klasördeki tüm dosyaların bir koleksiyonunu almaktır.

Aşağıdaki kod örneği, klasördeki tüm dosyaların listesinin nasıl alınacağını gösterir:

Tüm dosyalar toplandığında işin geri kalanı dosya formatını kontrol eden detect_file_format yöntemiyle yapılır.

Aşağıdaki kod örneği, toplanan dosya listesi üzerinde nasıl yineleme yapılacağını, her dosyanın biçiminin nasıl kontrol edileceğini ve her dosyanın uygun klasöre nasıl taşınacağını gösterir:

Dosyalar, kapalı modülünün dosya kopyala yöntemi kullanılarak uygun alt klasörlere taşınır.

Yukarıdaki örnekte aşağıdaki dosyalar kullanılmıştır. Dosya adı solda ve açıklaması sağdadır:

Dosyaların Group’i Giriş Belgesi Tip
Desteklenen dosya formatları Test Dosyası (Doc).doc Microsoft Word 95/6.0 veya Microsoft Word 97 – 2003 belgesi.
Test Dosyası (Dot).dot Microsoft Word 95/6.0 veya Microsoft Word 97 – 2003 şablonu.
Test Dosyası (Docx).docx Office Makrolar olmadan XML WordprocessingML belgesini açın.
Test Dosyası (Docm).docm Office Makrolarla birlikte XML WordprocessingML belgesini açın.
Test Dosyası (Dotx).dotx Office Açık XML WordprocessingML şablonu.
Test Dosyası (Dotm).dotm Makrolar içeren Office Açık XML WordprocessingML şablonu.
Test Dosyası (XML).xml FlatOPC OOXML Belgesi.
Test Dosyası (RTF).rtf Zengin Metin Biçimi belgesi.
Test Dosyası (WordML).xml Microsoft Word 2003 Kelime İşlemeML belgesi.
Test Dosyası (HTML).html HTML belgesi.
Test Dosyası (MHTML).mhtml MHTML (Web arşivi) belgesi.
Test Dosyası (Odt).odt OpenDocument Metni (OpenOffice Writer).
Test Dosyası (Ott).ott OpenDocument Belge Şablonu.
Test Dosyası (DocPreWord60).doc Microsoft Word 2.0 belgesi.
Şifrelenmiş belgeler Test Dosyası (Enc).doc Şifrelenmiş Microsoft Word 95/6.0 veya Microsoft Word 97 – 2003 belgesi.
Test Dosyası (Enc).docx Şifrelenmiş Office Açık XML WordprocessingML belgesi.
Desteklenmeyen dosya biçimleri Test Dosyası (JPG).jpg JPEG resim dosyası.