从java中的项目文件夹加载图像

时间:2013-06-16 10:14:11

标签: java io

我想将项目文件夹中的图像加载为:/src/images/URL.jpg

我试过这段代码:

BufferedImage image = ImageIO.read(getClass().getResource("/images/URL.jpg"));

但是我收到了这个错误:

Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException: input == null!
    at javax.imageio.ImageIO.read(ImageIO.java:1388)
    at Personel.PersonnelMainForm.print(PersonnelMainForm.java:464)

我该如何解决这个问题?

3 个答案:

答案 0 :(得分:4)

根据我使用的个人经验:

BufferedImage image = ImageIO.read(getClass().getResourceAsStream("/images/image.jpg"));

我将资源作为流获取,这似乎对我来说很好。

答案 1 :(得分:2)

您可以尝试使用File作为参数的this read版本。

BufferedImage image = ImageIO.read(new File("path"));

其中path是您提交的文件的路径,绝对或相对的。

另一个选项,如果您真的想要将其作为资源加载,则会根据this question编辑您的类路径。

答案 2 :(得分:0)

我想你的包中有一个java类。 你必须提升包装级别的次数。 例: Java类定义为org.test.MyClass 你必须上两次(../../)才能进入主目录。