Eclipse Javaプロジェクトと同じディレクトリにローカルに保存されている画像ファイル(gif)を読み込もうとしています。
ref
gif画像が保存される相対パスです。
public Sprite getSprite(String ref) {
BufferedImage sourceImage = null;
try {
URL url = this.getClass().getClassLoader().getResource(ref);
if (url == null) {
fail("Can't find ref: "+ref);
}
sourceImage = ImageIO.read(url);
} catch (IOException e) {
fail("Failed to load: "+ref);
}
}
上記の方法を使用するクライアントコードは次のとおりです。
public Entity(String ref,int x,int y) {
this.sprite = ResourceManager.getSprite("sprites/alien.gif");
this.x = x;
this.y = y;
}
Eclipseワークスペースとプロジェクトディレクトリ内sprites
に、gif画像が保存されているフォルダーがあります。ただし、クライアントコードは常に次の値を返します。Can't find ref: sprites/ship.gif
上記のアプローチでgif画像をロードするために何か間違ったことをしていますか?この場合、ファイルルックアップを実行するためのより簡単な方法はありますか?
アドバイスをありがとうございます。