Avatar billede dennism Nybegynder
08. april 2010 - 11:28 Der er 7 kommentarer og
1 løsning

Java: load textfile fra jar-fil

Jeg har en .txt-fil, som jeg bruger i mit projekt i Eclipse på denne måde:

File file = new File("file.txt");
BufferedReader input = new BufferedReader(new FileReader(file));

Det virker fint når jeg builder normalt og kører programmet. Men jeg har netop fået Eclipse til at generere en jar-fil til mig. Denne jar-fil er sat til også at skulle indeholde min tekstfil file.txt.

Problemet er, at når jeg så efterfølgende kører .jar-filen fra en vilkårlig path, så vil denne fil mangle, da den leder efter en file.txt i samme path som jar-filen - men den ligger altså inde i jar-filen.
Hvordan får jeg den til at læse den? Jeg frygter så, at når det kommer til at virke for kørsel af .jar-filen, så vil det ikke længere virke når det bliver buildet normalt i Eclipse under udvikling.

Hvordan får jeg dette sat op på den bedste måde?
Avatar billede arne_v Ekspert
08. april 2010 - 15:17 #1
Du skal laese den som resource !
Avatar billede arne_v Ekspert
08. april 2010 - 15:19 #2
new BufferedReader(new BufferedInputStreamReader(getClass().getResourceAsStream("/dirinjar/file.txt")))
Avatar billede dennism Nybegynder
08. april 2010 - 17:09 #3
Tak, det virker fint når jeg kører det som jar. Men når jeg så kører på direkte i Eclipse virker det ikke. Findes der en løsning på det?
Avatar billede arne_v Ekspert
08. april 2010 - 17:17 #4
Ja. Filen skal bare kopieres over i classpath (bin dir) paa samme sted som i jar filen.

Et eller andet sted maa du kunne faa Eclipse til at goere det automatisk.
Avatar billede dennism Nybegynder
08. april 2010 - 17:36 #5
Jeg har rodet lidt rundt i Eclipse, for at prøve at tilføje en reference. Men jeg har ikke kunnet finde det. Er der nogen der kan hjælpe med den del?

Du må gerne smide et svar, arne!
Avatar billede arne_v Ekspert
08. april 2010 - 17:50 #6
Jeg har lige checket.

Hvis du opretter filen med hoejreklik, new, other, general, file saa vil Eclipse automatisk kopiere den til bin.
Avatar billede dennism Nybegynder
08. april 2010 - 18:05 #7
Mange tak, havde ikke lige indset, at den skulle ligge i src-mappen :)
Vil du smide et svar?
Avatar billede arne_v Ekspert
08. april 2010 - 18:40 #8
svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester