打开图像资源Java JDK 8

时间:2015-07-01 03:50:19

标签: java image path java-8 assets

我正在尝试加载存储在项目中的名为Default.png的图像并将其绘制到画布上。我很清楚ImageIO.read然而无论我给它什么路径,我似乎无法加载它。我应该把图像放在哪里?我已经尝试将它放在一个单独的文件夹calles“res”中,将它放入assets.author.mypackagename.textures,但无论我做什么,我似乎无法找到正确的位置以及如何访问它。任何帮助表示赞赏,评论进一步细节。

2 个答案:

答案 0 :(得分:1)

实际上,资源是在相对于当前包的类路径中加载的。如果您的类路径中有/com/daniel/project/src/,并且图片位于/com/daniel/project/src/image,请使用:

ImageIO.read( ClassLoader.getSystemResource( "image/Default.png" ) );

但是,IDE中的src文件夹通常不包含在类路径中。尝试将图像添加到bin文件夹。

答案 1 :(得分:0)

如果您将其放在名为res的单独文件夹中,则可以通过以下方式加载图片:

ImageIO.read(this.getClass().getResource("/Default.png"));

您还可以执行以下操作:

ImageIO.read(new File("res/Default.png"));

第二种方法不需要将图片放在另一个文件夹中,但对我来说这样更干净。