有时候我们闲着无聊可能把.txt文本改成.jpg或.png.可是我们开发的时候可能读取都是按后缀名读取的,或许就可能把这一张伪造的图片也读了出来,可能给我们队开发造成一定的损害。那么我们怎么推断一个图片是真的图片还是假图片那:以下是方法:

public static void main(String[] args) throws IOException {
         File file=new File("C:/Documents and Settings/Administrator/桌面/aa.png");
		 System.out.println(isImageFile(file));
	}

	public static boolean isImageFile(File file) {
		ImageInputStream iis = null;
		try {
			iis = ImageIO.createImageInputStream(file); // resFile为需被
			Iterator<ImageReader> iter = ImageIO.getImageReaders(iis);
			if (!iter.hasNext()) {// 文件不是图片
				System.out.println("此文件不为图片文件");
				return false;
			}
			iis.close();
		} catch (IOException e) {
			e.printStackTrace();
		}
		return true;
	}

仅仅须要用这种方法就能够了:可能有的倒不了包,请把JDK升级到1.7在试试!

posted on 2017-04-17 08:56  ycfenxi  阅读(147)  评论(0编辑  收藏  举报