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

我想加载一个位于我的projet文件夹中的图像: /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) 

我怎么解决这个问题 ?

您可以尝试使用此版本的read ,它将File作为参数。

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

其中path是您文件的路径,绝对或相对于您需要。

如果您真的想将其作为资源加载,另一个选项就是根据此问题编辑您的类路径。

根据我使用的个人经验:

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

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

我想你的包中有一个java类。 你必须提升包装水平这么多次。 示例:Java类定义为org.test.MyClass,您必须两次(../../)才能在主目录中。