2016-10-17 2 views
0

Можно было бы загрузить изображение:
проекта> Рез> img.png (путь = "Рез/img.png")Загрузка изображений в Java (затмение против InteliJ)

BufferedImage image = loadImage(path); 

Где LoadImage является:

protected BufferedImage loadImage(String path) { 
    BufferedImage img = null; 
    try { 
     img = ImageIO.read(new File(path)); 
    } catch(IOException e) { 
     System.err.println("could not load: " + path); 
    } 
    return img; 
} 


Кто-то с помощью Eclipse, используется:
(путь = "/img.png")

BufferedImage image = null; 
    try { 
     image = ImageIO.read(Sprite.class.getResourceAsStream(path)); 
    } catch (IOException e) {  
     e.printStackTrace(); 
    } 

Но использовать это в IntelliJ дает:

Исключение в потоке "Game_main" java.lang.IllegalArgumentException: вход == нуль!

Почему getResourceAsStream не удается?

ответ

0

getResourceAsStream() использует (по умолчанию) системный загрузчик классов для поиска файла. Поэтому каталог ресурсов должен находиться в пути к классам - проверьте, правильно ли запущен проект IntelliJ, включая каталог res и обозначив его как каталог ресурсов.

Смежные вопросы