JAVA ImageIO.read方法报错/无效问题及解决

 更新时间:2023年11月18日 10:31:59   作者:Charlesix59  
这篇文章主要介绍了JAVA ImageIO.read方法报错/无效问题及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

JAVA ImageIO.read方法报错/无效

最近开始学习JAVA,使用到javax.imageio包里的read方法,不论我怎么写,IDEA一直报错。

如图

其实这个问题很容易解决,但是JAVA初学者往往不能理解——只需要用try/catch吧需要处理的代码包围就可以了。

		try {
            BufferedImage bi = ImageIO.read(file);
        } catch (IOException e) {
            e.printStackTrace();
        }

但是这样bi就变成了一个局部变量,这样我们就没法使用了,那该怎么处理呢?

解决

其实这个问题的解决方法也很明了,但是JAVA初学者可能无法理解——只要把需要的语句都添加到try的语句块里面就可以了

try {
            BufferedImage bi = ImageIO.read(file);
            int width= bi.getWidth();
            int height= bi.getHeight();
            int[][] data =new int[width][height];
            for (int i = 0; i < width; i++) {
                for (int j = 0; j < height; j++) {
                    data[i][j] = bi.getRGB(i, j);//得到的是sRGB值,4字节
                }
            }
            compressImg(width,height,data,6);
        } catch (IOException e) {
            e.printStackTrace();
        }

但是需要注意的一点是,read的file路径是不能有中文的,java文件可能也不能放在含中文的路径中。

否则的话会catch到如下错误:

javax.imageio.IIOException: Can’t read input file!
at javax.imageio.ImageIO.read(Unknown Source)
at test.main(test.java:22)

如果你可以使用JAVA的一些文件方法来对文件进行操作,但是不能使用ImageIO.read()的话,你就应该查看自己的文件路径是否含有中文或其他特殊字符了。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Java线程池的应用实例分析

    Java线程池的应用实例分析

    这篇文章主要介绍了Java线程池的应用,结合具体实例形式分析了java线程池的斐波那契数列计算与模拟工人做工等应用的操作技巧,需要的朋友可以参考下
    2019-10-10
  • Java求余%操作引发的一连串故事

    Java求余%操作引发的一连串故事

    取模运算与取余运算两个概念有重叠的部分但又不完全一致。主要的区别在于对负整数进行除法运算时操作不同。本文重点给大家介绍Java求余%操作引发的一连串故事,感兴趣的朋友跟随小编一起看看吧
    2021-05-05
  • java容器类知识点详细总结

    java容器类知识点详细总结

    这篇文章主要介绍了java容器类知识点详细总结,
    2019-06-06
  • java中String的常见用法总结

    java中String的常见用法总结

    以下是关于string的七种用法,注意哦,记得要时常去查看java的API文档,那个里面也有很详细的介绍
    2013-10-10
  • 学习Java的Date、Calendar日期操作

    学习Java的Date、Calendar日期操作

    Java开发过程中避免不了日期相关操作,这篇文章总结了一些Date、Calendar的常用方法,需要的朋友可以参考下
    2015-07-07
  • SpringBoot+React实现计算个人所得税

    SpringBoot+React实现计算个人所得税

    本文将以个人所得税的计算为例,使用React+SpringBoot+GcExcel来实现这一功能,文中的示例代码讲解详细,具有一定的学习价值,感兴趣的小伙伴可以了解下
    2023-09-09
  • Spring注解之@Import的简单介绍

    Spring注解之@Import的简单介绍

    @Import是Spring基于Java注解配置的主要组成部分,下面这篇文章主要给大家介绍了关于Spring注解之@Import的简单介绍,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2022-12-12
  • Java编程实现调用com操作Word方法实例代码

    Java编程实现调用com操作Word方法实例代码

    这篇文章主要介绍了Java编程实现调用com操作Word方法实例代码,代码注释很详细,在这里分给大家,需要的朋友可以参考下。
    2017-09-09
  • spring-security关闭登录框的实现示例

    spring-security关闭登录框的实现示例

    这篇文章主要介绍了spring-security关闭登录框的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-05-05
  • Spring Boot自定义错误视图的方法详解

    Spring Boot自定义错误视图的方法详解

    这篇文章主要介绍了Spring Boot自定义错误视图的方法详解,需要的朋友可以参考下
    2020-08-08

最新评论