2013-12-04 2 views
0

Я читал в образах, которые были в той же папке, что и мои программы как этотJava Чтение в Изображения

public void GetImages() { 
    imgMonster = new ImageIcon(Astro_n_Monster.class.getResource("image.png")).getImage(); 
    } 

, но теперь я переместил их в другую папку, но в папке проекта до сих пор. Я не совсем уверен, как читать их больше, потому что я пробовал такие вещи, как «H: NetBeansProjects \ Game \ Pictures \ image.png», но это не будет читать. Мне нужна помощь в том, что нужно изменить в пределах ""

+0

Что такое класс Astro_n_Monster? –

+0

Некоторая живопись, некоторые движущиеся, некоторые анимационные, все, что я работал на xD – BlueBarren

+0

Что бросает Исключение –

ответ

1
imgMonster = new ImageIcon("Pictures/image.png").getImage(); 

Вы можете назвать это, не используя getResource(). Если вы используете этот путь к файлу juse, он должен работать. Netbeans начнется с Game dir, который является вашим корнем проекта. Оттуда он будет следовать указанному пути к файлу

Game (project root) 
    Pictures 
      image.png 
    src 
    build 
+1

Спасибо! Это сработало! – BlueBarren

0

вы пробовали H: \\ NetBeansProjects \\ Game \\ Фотографии \\ image.png или H: /NetBeansProjects/Game/Pictures/image.png. Символ «\» предназначен только для экранирования других символов. И ваш код неправильный. Это должно быть так:

Image imgMonster = new ImageIcon("H:\\NetBeansProjects\\Game\\Pictures\\image.png").getImage(); 
+0

Я пробовал оба направления двойных косых черт – BlueBarren

+0

Тогда что-то не так. Можете ли вы опубликовать весь свой код? – Sergi

+0

Вы должны использовать «/», он работает на Windows и Linux. – Fabinout

0

AnyClass.class.getResource("image.png") возвращает абсолютный URL этого ресурса. Но для этого он должен быть расположен в папке пути класса.

Для того чтобы ваш код работал, image.png должен быть доступен там, где генерируется файл .class файла Astro_n_Monster.

+0

Спасибо за это, но именно так у меня были изображения, прежде чем мне сказали вывести их из местоположения класса – BlueBarren

0

Рассмотрим следующую структуру пакета с простым решением для загрузки изображения из пакета

com 
    |_ myCompany 
    |_ images 
     |_ image.png 
com 
    |_ myCompany 
     |_ javaClasses 
     |_ Astro_n_Monster 

Теперь даже ваш шаг ваш класс класса Astro_n_Monster вместе с пакетом изображений вы получите вывод, используя следующий код

imgMonster = new ImageIcon(Astro_n_Monster.class.getResource("/com/myCompany/images/image.png")).getImage(); 
+0

Не было бы у меня только «H: \\ NetBeansProjects \\ Game \ \ Pictures \\ image.png "как @Sergi предложил? Потому что если так, то это все еще не работает. – BlueBarren

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