我想将项目文件夹中的图像加载为:/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)
我该如何解决这个问题?
答案 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 你必须上两次(../../)才能进入主目录。