Detekovat formát souboru a kontrolovat kompatibilitu formátu
Někdy je nutné určit formát dokumentu před otevřením, protože přípona souboru nezaručuje, že obsah souboru je vhodný. Například je známo, že Crystal Reports často vytiskne dokumenty ve formátu RTF, ale dává jim .doc rozšíření.
Aspose.Words poskytuje možnost získat informace o typu souboru, aby se zabránilo výjimku, pokud si nejste jisti, jaký je skutečný obsah souboru.
Detekovat formát souboru bez výjimky
Pokud se zabýváte více dokumenty v různých formátech souborů, můžete potřebovat oddělit soubory, které mohou být zpracovány Aspose.Words od těch, kteří nemohou. Možná budete také chtít vědět, proč některé dokumenty nelze zpracovat.
Pokud se pokusíte načíst soubor do Document objekt a Aspose.Words nelze rozpoznat formát souboru nebo formát není podporován, Aspose.Words bude hodit výjimku. Můžete chytit tyto výjimky a analyzovat je, ale Aspose.Words také poskytuje detect_file_format metoda, která nám umožňuje rychle určit formát souboru bez načtení dokumentu s možnými výjimkami. Tato metoda vrací a FileFormatInfo objekt, který obsahuje zjištěné informace o typu souboru.
Zkontrolovat kompatibilitu formátů souborů
Můžeme zkontrolovat formátovou kompatibilitu všech souborů ve vybrané složce a třídit je podle formátu do odpovídajících podsložek.
Vzhledem k tomu, že se zabýváme obsahem ve složce, první věc, kterou musíme udělat, je získat sbírku všech souborů v této složce pomocí seznamdir způsob os Modul.
Následující příklad kódu ukazuje, jak získat seznam všech souborů ve složce:
Když jsou všechny soubory shromažďovány, zbytek práce provádí detect_file_format metoda, která kontroluje formát souboru.
Následující příklad kódu ukazuje, jak iterovat nad sebraným seznamem souborů, zkontrolovat formát každého souboru a přesunout každý soubor do příslušné složky:
Soubory jsou přesunuty do odpovídajících podsložek pomocí kopírovat soubor způsob shutil Modul.
Ve výše uvedeném příkladu jsou použity následující soubory. Jméno souboru je vlevo a jeho popis vpravo:
Group Souborů | Vstupní dokument | Typ |
---|---|---|
Podporované formáty souborů | Testovací soubor (Doc).doc | Microsoft Word 95, 0 nebo Microsoft Word 97 Dokument 2003/2003. |
Zkušební soubor (Dot ). tečka |
Microsoft Word 95, 0 nebo Microsoft Word 97; | |
Testovací soubor (Docx).docx | Otevřít XML zpracování slov ML dokument bez makros. | |
Testovací soubor (Docm).docm | Otevřít XML zpracování slov Dokument ML s makrami. | |
Testovat soubor (Dotx).dotx | Otevřít XML zpracování slov ML šablona. | |
Testovat soubor (dotm).dotm | Otevřít XML zpracování slov šablona ML s makrami. | |
Testovací soubor (XML).xml | Dokument FlatOPC OOXML. | |
Testovací soubor (RTF).rtf | Rich Text Format dokument. | |
Testovat soubor (WordML).xml | Microsoft Word 2003 Zpracování slov ML dokument. | |
Testovací soubor (HTML).html | HTML dokument. | |
Testovací soubor (MHTML).mhtml | MHTML (Web archiv) dokument. | |
Testovat soubor (Odt).odt | OpenDocument Text (OpenOffice Writer). | |
Testovat soubor (Ott).ott | Otevřít šablonu dokumentu. | |
Testovací soubor (DocPreWord60).doc | Microsoft Word 2.0 dokument. | |
Zašifrované dokumenty | Testovací soubor (Enc).doc | Zašifrováno Microsoft Word 95, 0 nebo Microsoft Word 97 Dokument 2003/2003. |
Testovat soubor (Enc).docx | Zašifrovaný Office Open XML Word processing ML dokument. | |
Nepodporované formáty souborů | Testovací soubor (JPG). jpg | Obrazový soubor JPEG. |