在Web程序中,如果限制上传文件为图片,大部分方法都采取检查文件扩展名。这样,当把一个非图片文件的扩展名改为jpg、gif或者bmp时,就能绕过限制。所以必须得通过读取文件内容来进行判断。这里提供两种实现代码。
实现方式一:
ImageInputStream iis = ImageIO.createImageInputStream(new File("D://联行号.jpg"));
Iterator<ImageReader> iter = ImageIO.getImageReaders(iis);
if (!iter.hasNext()) {//文件不是图片
System.out.println("此文件不为图片文件");
}
实现方式二:
BufferedImage bi = ImageIO.read(new File("D://联行号.jpg"));
if(bi == null){
System.out.println("此文件不为图片文件");
}
公众号ID:longjiazuoA

未经允许不得转载:人生设计师 » Java依据文件内容判断是否是图片