在提供图片上传的接口时,我们可能会需要知道上传来的图片是什么格式,比如 jpg,png,gif等等。图片的格式信息会存放到图片文件的头信息中,Java提供了ImageIO类来处理图片,代码片段如下:
public static void main(String[] args) throws IOException {
File imageFile = new File("foo.jpg");
try (ImageInputStream imageInputStream = ImageIO.createImageInputStream(imageFile)) {
Iterator<ImageReader> imageReadersList = ImageIO.getImageReaders(imageInputStream);
if (!imageReadersList.hasNext()) {
throw new RuntimeException("Cannot detect image format.");
}
ImageReader reader = imageReadersList.next();
System.out.println("Image format:" + reader.getFormatName());
}
}