0

我试图弄清楚我的图像如何以及为什么只能在 NetBeans 的调试中加载,但是当我执行 JAR 文件时,它将无法加载图像。我已尝试调试代码以修复路径中的问题,但任何更改的语句都对其没有影响。

下面是产生问题的代码。

String imagePath = getClass().getResource("/StandardDeck/GameCards/"+ toString() +".png").getPath();

执行 file.exists() 时,它总是返回 false。

感谢您的任何帮助!

4

1 回答 1

0

一旦将应用程序打包到 JAR 文件中,您的方法将不起作用。您不会使用java.io.File类访问 JAR 中的图像。

您需要使用getResourceAsStream方法

InputStream imageStream = getClass().getResourceAsStream("/StandardDeck/GameCards/"+ toString() +".png");

要开始使用图像,请尝试:

ImageInputStream imageInputStream = ImageIO.createImageInputStream(imageStream);
于 2012-10-24T14:17:36.940 回答