Я некоторое время разрабатывал клон космических захватчиков, а используемые ими свойства изображения отлично работали, когда я определял точный путь (I.E. E:\Images\picture.png
). Однако, поскольку мой проект находится на палке данных, а разные USB-устройства на разных ПК используют разные буквы, я подумал, что было бы неплохо разместить активы с моим исходным кодом, чтобы они всегда работали. Итак, вот мой новый код загрузки изображения:Eclipse - Где разместить файлы изображений
if(type.equals("player"))
{
try
{
img = ImageIO.read(new File("/assets/Bullet.png"));
}
catch(IOException e)
{
e.printStackTrace();
}
}
else if(type.equals("alien"))
{
try
{
img = ImageIO.read(new File("/assets/BulletAlien.png"));
}
catch(IOException e)
{
e.printStackTrace();
}
}
Я создал папку под названием assets
внутри моего каталога исходного кода (т.е. E:\<eclipse workspace>\<project name>\src\assets
) и заполнить его со всеми моими файлами изображений. Однако каждый раз, когда я пытаюсь запустить программу, я получаю javax.imageio.IIOException
на всех изображениях, которые я пытаюсь загрузить; причиной является «Не удается найти входной файл». Как я могу это исправить?
Примечание: используйте 'equals' для сравнения строк, а не' == '. Слухи говорят, что программисты, которые используют '==', страдают в аду. – Maroun
Вы пробовали 'активы/Bullet.png'? – ItachiUchiha