打开图像资产 Java JDK 8

Opening image asset Java JDK 8

我正在尝试加载存储在项目中的名为 Default.png 的图像并将其绘制到 canvas 上。我很清楚 ImageIO.read 但是无论我给它什么路径,我似乎都无法加载它。我应该把图像放在哪里?我试过将它放在单独的文件夹 calles "res," 中,然后放入 assets.author.mypackagename.textures,但无论我做什么,我似乎都找不到正确的位置以及如何访问它。感谢任何帮助,评论更多细节。

实际上资源是在相对于当前包的类路径中加载的。如果 /com/daniel/project/src/ 在你的类路径中,图像在 /com/daniel/project/src/image 中,那么使用:

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

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

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

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

你也可以这样做:

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

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