현재 작업중인 작은 게임에 대한 스프라이트 시트를로드하려고합니다.ImageIO.read 표현식이 갑작스럽게 작동을 멈추었습니다.
private void load(){
try {
BufferedImage image = ImageIO.read(Sprite.class.getResource(path));
int w = image.getWidth();
int h = image.getHeight();
image.getRGB(0, 0, w, h, pixels, 0, w);
} catch (IOException e) {
e.printStackTrace();
}
}
ImageIO.read()
항상 null
를 반환 문제는 여기에 코드의 조각이다. 또한 예외는 발생하지 않습니다. 이미지가 null
일 때 image.getWidth()
으로 전화하면 분명히 다음 줄에서 오류가 발생합니다.
내게 정말 괴로운 점은 10 분 전에 동일한 코드 조각이 완벽하게 작동한다는 것입니다. 나는 독서 과정에 전혀 영향을 미치지 않는 가치를 변화시키지 않았다. 심지어 그것을 다시 바꾸는 것은 아무 것도하지 않을 것입니다.
여기서는 무엇을 해야할지 알고 있습니까?
이미지를 디코딩 할 수없는 경우 null 반환 값은 일반 반환 값이므로 항상 'ImageIO.read'의 반환 값을 확인해야합니다. http://docs.oracle.com/javase/6/docs/ api/javax/imageio/ImageIO.html # read (java.net.URL). – Michael