我想检查传递的文件是否是图像,如果不是,我想显示一条消息,指示该文件不是图像.
try{
Image img = ImageIO.read(new File(name));
}catch(IOException ex)
{
valid=false;
System.out.println("The file" + name + "could not be opened, it is not an image");
}
Run Code Online (Sandbox Code Playgroud)
当文件(引用name)不是图像有效时未设置为false,为什么会发生这种情况?我应该更改例外的类型吗?我已经阅读了关于try-catch的内容,据我所知,如果ImageIO.read失败并且异常的类型是IOException,将执行catch块的内容.那为什么不执行呢?
有没有其他方法来检查文件是否是图像?