java判斷是否是圖片的方法:
1、透過判斷檔案後綴名判斷是否是圖片
String extension = ""; int i = fileName.lastIndexOf('.'); if (i > 0) { extension = fileName.substring(i+1); } //... if("jpg".equals(extension)){ //your code }
2、透過判斷文件頭判斷是否為圖片
在後綴未知,或是後綴被修改的文件,依然透過文件頭來判斷該文件究竟是什麼文件類型。我們可以使用一個文字編輯工具如UltraEdit開啟檔案(16進位模式下),然後看檔案頭是什麼字符,以下是常見圖片類型的檔案頭字符(16進位)
JPEG (jpg),文件头:FFD8FF PNG (png),文件头:89504E47 GIF (gif),文件头:47494638 TIFF (tif),文件头:49492A00 Windows Bitmap (bmp),文件头:424D
#3、透過MimetypesFileTypeMap來判斷
public class ImageCheck { private MimetypesFileTypeMap mtftp; public ImageCheck(){ mtftp = new MimetypesFileTypeMap(); /* 不添加下面的类型会造成误判 mtftp.addMimeTypes("image png tif jpg jpeg bmp"); } public boolean isImage(File file){ String mimetype= mtftp.getContentType(file); String type = mimetype.split("/")[0]; return type.equals("image"); } }
4、透過ImageIO來判斷
try { // 通过ImageReader来解码这个file并返回一个BufferedImage对象 // 如果找不到合适的ImageReader则会返回null,我们可以认为这不是图片文件 // 或者在解析过程中报错,也返回false Image image = ImageIO.read(file); return image != null; } catch(IOException ex) { return false; }
注意: 此方法適用的圖片格式為bmp/gif/jpg /png
更多java知識請關注java基礎教學。
以上是java判斷是否為圖片的詳細內容。更多資訊請關注PHP中文網其他相關文章!