因为仅仅通过后缀名我们并不能得知用户是否把图片的类型更改为其他类型.
public enum ImageType {
PNG('P','N','G','-',"PNG"),
JPG('J','F',...== data[8]
&& JPG.getLast() == data[9]) {
return JPG;
}
return null;
}
}
//把JPG图片的后缀改成...fs.read(data);
System.out.println(ImageType.getImageType(data));
fs.close();
}
控制台依然输出:
JPG
改进:因为文件流的前...10个位置是保存的文件类型的信息根据这个规律:
public enum FileType2 {
FILE;
private static final Map FILE_TYPES...FILE_TYPES.put("JFIF", "JPG");
FILE_TYPES.put("GIF", "GIF");
FILE_TYPES.put("PDF", "PDF");
}
/**
* 从集合中取得相应类型