我在bin中有一些图像,我想检查标题以检查格式(jpg,png等)
我不想使用临时文件!我有一个使用TEMP FILES的解决方案.
我有一个要求,我需要识别图像的类型,而不是通过文件扩展名,但通过验证标头.我试图通过幻数验证来验证JPEG文件.
File imgFile =
new File("C:\\Users\\Public\\Pictures\\Sample Pictures\\Chrysanthemum.jpg");
byte[] ba = Files.toByteArray(imgFile); //Its a google guava library
int i = 0;
if(ba [i] == 0xFF && ba[i+1] == 0xD8 && ba[i+2] == 0xFF && ba[i+3] == 0xE0){
System.out.println("isJPEG");
}
Run Code Online (Sandbox Code Playgroud)
但条件并没有让人满意.ba[i] 回报-1.
我究竟做错了什么?