gpt4 book ai didi

Java BufferedImage 抛出 NullPointerException

转载 作者:行者123 更新时间:2023-11-30 02:58:31 25 4
gpt4 key购买 nike

我正在用 Java 制作一个太空射击游戏,但是当我尝试加载图像资源时,出现空指针异常。除了图像之外,一切正常。我编码的目录错误吗?我该如何修复它?

这是我的代码:

BufferedReader highScoreReader;
BufferedWriter highScoreWriter;

try {
playerImage = ImageIO.read(this.getClass().getResourceAsStream("src/res/player.png"));
bulletImage = ImageIO.read(this.getClass().getResourceAsStream("src/res/bullet.png"));
enemyImage = ImageIO.read(this.getClass().getResourceAsStream("src/res/enemy.png"));

highScoreReader = new BufferedReader(new FileReader("/files/HIGH_SCORE.txt"));
highScoreWriter = new BufferedWriter(new FileWriter("/files/HIGH_SCORE.txt"));
} catch (Exception e) {
e.printStackTrace();
}

这是我的文件目录的屏幕截图:

enter image description here

最佳答案

很可能,您需要将图像复制到项目的构建目录中。如果您希望将它们视为类路径资源(看来您确实这样做了),请确保它们位于 eclipse 中的源文件夹中(或者,如果您使用 maven 或类似文件,则位于 src/main/resources 中)文件夹。重点是,它们需要复制到 .class 文件运行时所在的位置。

记住:class.getResourceAsStream(...)classpath 返回内容,而不是从源路径返回内容。

关于Java BufferedImage 抛出 NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36562364/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com