ImageIO.read为null

在使用ImageIO.read的时候,返回发现是null

Image src = ImageIO.read(new File("D:\\a.jpg"));

一般出现这个问题,是因为你的a.jpg图片可能有问题,可能强制转换过图片的类型png还是jpg什么的。

1.可以鼠标右键----->属性,看图片的格式是否正常

2. ImageIO可读取的图片类型

 public static void main(String[] args) {
        String readFormats[] = ImageIO.getReaderFormatNames();
        String writeFormats[] = ImageIO.getWriterFormatNames();
        System.out.println("Readers:  " + Arrays.asList(readFormats));
        System.out.println("Writers:  " + Arrays.asList(writeFormats));
    }

Readers:  [JPG, jpg, tiff, bmp, BMP, pcx, PCX, gif, GIF, WBMP, png, PNG, raw, RAW, JPEG, pnm, PNM, tif, TIF, TIFF, wbmp, jpeg]
Writers:  [JPG, jpg, tiff, pcx, PCX, bmp, BMP, gif, GIF, WBMP, png, PNG, raw, RAW, JPEG, pnm, PNM, tif, TIF, TIFF, jpeg, wbmp]

3.把图片拖到记事本中打开,看到格式竟然是WEBPVP8 ,所以不支持,可更换其他图片。


版权声明:本文为susu1083018911原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。