![](/img/trans.png)
[英]java.lang.IllegalArgumentException: input == null
[英]Error in loading image - java.lang.IllegalArgumentException: input == null
我嘗試使用 Eclipse IDE 在 Java 中為我的游戲項目顯示圖像:我有ImageReader
:
public BufferedImage loadImage(String path) {
try {
BufferedImage image = ImageIO.read(getClass().getResource(path));
return image;
} catch(IOException e) {
e.printStackTrace();
System.exit(-1);
}
return null;
}
我從GameWindow
class 加載圖像:
@Override
public void paint(Graphics g) {
super.paint(g);
Graphics2D g2D = (Graphics2D) g;
g2D.drawImage(ImageReader.getInstance().loadImage("/x.png"), 0, 0, Game.FIELD_HEIGHT, Game.FIELD_WIDTH, null);
}
這是我的 Package 資源管理器: Package 資源管理器
當我嘗試運行該程序時,我收到以下錯誤:
Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException: input == null!
at javax.imageio.ImageIO.read(Unknown Source)
at game.util.ImageReader.loadImage(ImageReader.java:31)
at game.util.ImageReader.<init>(ImageReader.java:18)
at game.util.ImageReader.getInstance(ImageReader.java:24)
at game.gui.GameWindow.paint(GameWindow.java:31)
感謝任何幫助!
您可能需要將圖像讀取代碼更改為
public BufferedImage loadImage(String path) {
try {
BufferedImage image = ImageIO.read( new FileInputStream( new File( path ) ) );
return image;
} catch(IOException e) {
e.printStackTrace();
System.exit(-1);
}
return null;
}
我假設文件路徑是正確的,並且您的 res 目錄被正確標記為資源目錄。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.