我正在創建一個應用程序,由於某些原因只能接受PNG圖像。JavaFX:獲取圖像的格式(PNG,JPG ..)?
如何檢查圖像是否真的是PNG圖像?目前我正在使用JavaFX 2 Image類來加載圖像。
感謝您的任何提示!
我正在創建一個應用程序,由於某些原因只能接受PNG圖像。JavaFX:獲取圖像的格式(PNG,JPG ..)?
如何檢查圖像是否真的是PNG圖像?目前我正在使用JavaFX 2 Image類來加載圖像。
感謝您的任何提示!
我做到這一點目前在我自己的應用程序中通過在處理它之前確認文件的MIME類型。有幾個SO線程提示如何在Java中獲得Mime類型。
如果你不信任的文件名,一個簡單的檢查是讀取頭8個字節(帶FileInputStream
),並檢查它們對應的PNG簽名(相關:https://stackoverflow.com/a/10555053/277304)
這將是檢查MIME類型。 – JoshDM 2013-02-16 14:05:46
也謝謝! Java 7中有一個方便的方法,請參閱我對Josh的回覆的評論。 – 2013-02-16 14:26:20
我在http://stackoverflow.com/questions/51438/getting-a-files-mime-type-in-java結束了Chris Mowforth的回答:Java 7的Files.probeContentType(路徑) - 在我的情況下效果很好。所以感謝提示:-) – 2013-02-16 14:25:44