Steven Rogers Steven Rogers - 6 months ago 33
Java Question

How do i get the url to my resources?

I noticed that when I try to load a resource (an image, data, sound file, ect.) it is not possible to put it in the same file as the source code and just type "soundfiles/sound.wav". What is the best way to get this url?

Specifically here:

// load wave data from buffer
WaveData wavefile = WaveData.create("spaceinvaders/" + path);

I have done this before in many different ways, just wondering what the best way is.


If you ship your application in jar it's common way to package resources also in jar and access them using classloader:

//jar structure
|  `--... //classes here

And code to access:

InputStream resource = getClass().getClassLoader().getResourceAsStream("resources/spaceinvaders/sound.wav");