我熟悉working with images .我 retrieve/read an image from a URL ,其中 URL 没有文件扩展名。那我想write/save the image到本地存储,但我必须指定图像文件扩展名(即 JPG、PNG 等),我无法通过 BufferedImage 检索其扩展名。
请指出如何做到这一点? 任何其他方法都可以。
最佳答案
使用 ImageReader.getFormatName()
您可以使用 ImageIO.getImageReaders(Object input) 获取文件的图像阅读器.
我自己没有测试过,但是你可以试试这个:
ImageInputStream iis = ImageIO.createImageInputStream(file);
Iterator<ImageReader> imageReaders = ImageIO.getImageReaders(iis);
while (imageReaders.hasNext()) {
ImageReader reader = (ImageReader) imageReaders.next();
System.out.printf("formatName: %s%n", reader.getFormatName());
}
关于Java 使用 BufferedImage 从 URL 获取图像扩展名/类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11447035/