Я пытаюсь получить доступ к изображению, расположенному внутри бегущей банки.Получение пути к файлу внутри Jar
Вот мой код:
Image image = Toolkit.getDefaultToolkit().getImage(
getClass().getResource("/res/sprites/"));
Код выше работает абсолютно нормально.
Проблема, с которой я сталкиваюсь, заключается в преобразовании ее в читаемую строку, которая будет использоваться объектом BufferedImage.
Вот мой код: (pathRelativeToThis это строка)
Image path = Toolkit.getDefaultToolkit().getImage(
getClass().getResource("/res/sprites/" + pathRelativeToThis));
String image = "file://" + path.toString();
URL url = new URL(image);
BufferedImage img = ImageIO.read(url);
Это не работает и дает javax.imageio.IIOException: Can't get input stream from URL!
как ошибка.
Каков правильный способ сделать это?
'Class.getResource()' возвращает URL. 'ImageIO.read (URL)' принимает URL-адреса. Почему вы хотите конвертировать его в строку «String» между ними? –