2012-06-06 82 views
2

文件類型,而苦思-了一個基於servlet的應用程序讀取文件,並操縱他們(圖像類型轉換),這裏是走到了我一個問題:怎麼知道沒有擴展

  1. 是它可能檢查文件內容並知道文件類型?
  2. 是否有標準指定每個文件必須在其內容中提供某種類型的標記,以便應用程序不必依賴文件擴展的約束?

考慮應用場景:

我創建一個應用程序,就可以不同的文件格式轉換成一組輸出格式。說用戶上傳PDF,我的應用程序可以建議,可能的轉換格式是微軟的Word或TIFF或JPEG等

由於我的應用程序將逐漸支持不同的文件格式(一段時間),我希望我的應用程序檢查輸入文件而不是讓用戶指定格式。並向用戶建議可能的輸出格式。

我知道這是一個開放式,廣泛的問題。請讓我知道是否需要修改。

感謝, Ayusman

回答

3

葉氏你可以計算出類型,而不使用magic number的延伸。 此外,辦法文件命令的數字出來,實際上是通過3步檢查:

  1. 檢查文件系統的性能已識別的空文件,文件夾,等等...
  2. 上述幻數
  3. 在文本文件中,檢查語言在它

這裏有一個庫,將幫助您與幻數:jmimemagic