在Eclipse中使用BufferedImage很困难

时间:2014-04-14 13:12:43

标签: eclipse bufferedimage

我已将图像存储在资源文件夹“图像”中:

  

的src

     

-com.program

     

-Images

在我使用的程序中

BufferedImage image =ImageIO.read(getClass().getResourceAsStream("/myImage.png"));

导入图像。

这很好用。但是,如果我在源头更改图像的名称(比如myImage1.png) 并尝试执行

BufferedImage image =ImageIO.read(getClass().getResourceAsStream("/myImage1.png"));

我得到输入== Null。 我一直尝试让它工作一段时间,并在其他线程上尝试了各种建议。 有任何想法吗? 谢谢!

1 个答案:

答案 0 :(得分:0)

问题很可能是:

图像位于项目内的src文件夹中,但是当程序运行时,它会从包含已编译类的另一个文件夹运行。此文件夹不包含png,因此当无法解析资源时,您会收到input == null例外(getClass().getResourceAsStream(...)返回null

要使其正常工作,您需要将images文件夹标记为资源文件夹(使用Eclipse,Maven或最喜欢的构建工具),并确保该程序包的内容在程序路径中跑了。