Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

I'm trying to load an image from a file without using a FileChooser. The folders are:

TestProject
-src
--application
---(all_the_classes_i'm_using.java)
-assets
--drawIcon.png

I want to load the image in the assets folder. I've tried:

Image image = new Image("../assets/drawIcon.png")
Image image = new Image(getClass().getResourceAsStream("../assets/drawIcon.png"))

I've tried it with the string path "/TestProject/assets/drawIcon.png", but nothing. I don't understand how to load this image!

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
1.4k views
Welcome To Ask or Share your Answers For Others

1 Answer

Set the assets directory as a resource directory and then load the image as a resource from the location "/drawIcon.png":

URL url = getClass().getResource("/drawIcon.png");
Image image = ImageIO.read(url);

In case you want to create a javafx Image:

Image image = new Image("/drawIcon.png");

In this case, also, mark that folder as resource folder.

More info here: https://docs.oracle.com/javafx/2/api/javafx/scene/image/Image.html


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share

548k questions

547k answers

4 comments

86.3k users

...