Forums Register Login

Text Files in a Self-Contained Jar

+Pie Number of slices to send: Send
Hello again. I managed to get all the images into the jar file using.

getClass().getResource("/" + imageName);

Now I'm trying to get the text files that are read in to build maps of areas using the images. I thought I would use the same but the File Class does not like URLs in its constructor. To solve this I appended a .getPath() to the end of the statement.

getClass().getResource("/" + textFile).getPath();

But the program does not seem to like this. I end up getting a path that looks something like the following:

/home/Users/Gad/Programming/Game/game.jar!/Maps/map.top

If I've tried removing the slash so it is:

/home/Users/Gad/Programming/Game/game.jar!Maps/map.top

As well as a number of other things to try to get this to work including removing the exclamation point but no luck on all fronts.

When the error is thrown it says approximately the following:

Cannot Find File:
File://home/Users/Gad/Programming/Game/game.jar!Maps/map.top

When I get another opportunity to work on it tonight I plain to toString() the image files that make it into the jar to see if they'll provide me a hint as to the directory structure of a jar.

Thanks for any help, sorry I posted again but no one replied to my last post in the other thread.
+Pie Number of slices to send: Send
You can get an InputStream from which to read by using the getResourceAsStream method instead of getResource.
+Pie Number of slices to send: Send
Thanks a ton. This worked great.

Here's a link to the self-contained game Jar if you're interested.

Game Link
Shiny ad:
a bit of art, as a gift, the permaculture playing cards
https://gardener-gift.com


reply
reply
This thread has been viewed 948 times.
Similar Threads
How can you get the path name from a file name
Creating a Self-Contained Jar
executable jar file
Jasper Report and JAR file
Problem with getClass().getResource in jar?
More...

All times above are in ranch (not your local) time.
The current ranch time is
Mar 28, 2024 17:35:59.