فرمت فایل را شناسایی کنید و سازگاری فرمت را بررسی کنید

گاهی اوقات لازم است قبل از باز کردن یک سند، فرمت آن مشخص شود، زیرا پسوند فایل تضمین نمی کند که محتوای فایل مناسب است. به عنوان مثال، مشخص است که Crystal Reports اغلب اسناد را با فرمت RTF خروجی می دهد، اما پسوند .doc را به آنها می دهد.

Aspose.Words امکان به دست آوردن اطلاعات در مورد نوع فایل را فراهم می کند تا اگر مطمئن نیستید محتوای واقعی فایل چیست، از یک استثنا جلوگیری می کند.

تشخیص فرمت فایل بدون استثنا

هنگامی که با چندین سند در قالب‌های فایل مختلف سروکار دارید، ممکن است لازم باشد آن فایل‌هایی را که می‌توانند توسط Aspose.Words پردازش شوند از فایل‌هایی که نمی‌توانند پردازش کنند، جدا کنید. همچنین ممکن است بخواهید بدانید چرا برخی از اسناد قابل پردازش نیستند.

اگر بخواهید فایلی را در یک شیء Document بارگیری کنید و Aspose.Words نتواند فرمت فایل را تشخیص دهد یا فرمت آن پشتیبانی نشود، Aspose.Words یک استثنا ایجاد می کند. شما می توانید آن استثناها را بگیرید و آنها را تجزیه و تحلیل کنید، اما Aspose.Words همچنین روش detect_file_format را ارائه می دهد که به ما امکان می دهد فرمت فایل را بدون بارگیری سند با استثناهای احتمالی به سرعت تعیین کنیم. این روش یک شی FileFormatInfo را برمی گرداند که حاوی اطلاعات شناسایی شده در مورد نوع فایل است.

سازگاری فرمت فایل ها را بررسی کنید

می‌توانیم سازگاری فرمت همه فایل‌های موجود در پوشه انتخابی را بررسی کرده و آنها را بر اساس فرمت در زیر پوشه‌های مربوطه مرتب کنیم.

از آنجایی که ما با محتوای یک پوشه سروکار داریم، اولین کاری که باید انجام دهیم این است که با استفاده از روش listdir ماژول سیستم عامل مجموعه ای از تمام فایل های این پوشه را دریافت کنیم.

مثال کد زیر نحوه دریافت لیستی از تمام فایل های موجود در پوشه را نشان می دهد:

وقتی همه فایل ها جمع آوری شدند، بقیه کارها با روش detect_file_format انجام می شود که فرمت فایل را بررسی می کند.

مثال کد زیر نحوه تکرار لیست فایل‌های جمع‌آوری‌شده، بررسی فرمت هر فایل و انتقال هر فایل به پوشه مناسب را نشان می‌دهد:

فایل ها با استفاده از روش فایل را کپی کن ماژول shutil به زیر پوشه های مناسب منتقل می شوند.

در مثال بالا از فایل های زیر استفاده شده است. نام فایل در سمت چپ و توضیحات آن در سمت راست:

Group از فایل ها سند ورودی تایپ کنید
فرمت های فایل پشتیبانی شده فایل تست (Doc).doc سند Microsoft Word 95/6.0 یا Microsoft Word 97 – 2003.
فایل تست (Dot).dot الگوی Microsoft Word 95/6.0 یا Microsoft Word 97 – 2003.
فایل تست (Docx).docx Office Open XML WordprocessingML سند بدون ماکرو.
فایل تست (Docm).docm Office سند XML WordprocessingML را با ماکروها باز کنید.
فایل تست (Dotx).dotx قالب Office Open XML WordprocessingML.
فایل تست (Dotm).dotm Office Open XML WordprocessingML قالب با ماکرو.
فایل تست (XML).xml سند FlatOPC OOXML.
فایل تست (RTF).rtf سند با فرمت متن غنی
فایل تست (WordML).xml سند WordprocessingML Microsoft Word 2003.
فایل تست (HTML).html سند HTML
فایل تست (MHTML).mhtml سند MHTML (بایگانی وب).
فایل تست (Odt).odt متن OpenDocument (OpenOffice Writer).
فایل تست (Ott).ott قالب سند OpenDocument.
فایل آزمایشی (DocPreWord60).doc سند Microsoft Word 2.0.
اسناد رمزگذاری شده فایل تست (Enc).doc سند رمزگذاری شده Microsoft Word 95/6.0 یا Microsoft Word 97 – 2003.
فایل تست (Enc).docx سند رمزگذاری شده Office Open XML WordprocessingML.
فرمت های فایل پشتیبانی نشده فایل تست (JPG).jpg فایل تصویری JPEG