Salve a tutti, ho un piccolo problema con un programma che ho scritto.
Ho creato un programma che all'avvio ha bisogno di trovare la directory in cui si trova il file che sto eseguendo.
Quindi ho utilizzato il comando:
codice:
File file = new File (System.getProperty ("java.class.path"));
Home.directoryDiLavoro = file.getAbsoluteFile().getParentFile().toString();
Uso poi il percorso a quel file per aprire un altro file, che so essere in una sua sottodirectory
codice:
Home.pathElencoCanzoni= directoryDiLavoro + "/Data/elenco_canzoni.txt";
Eseguendo il programma all'interno di Eclipse non ho mai avuto problemi, ma se provo ad eseguirlo da shell mi dice:
Errore nella creazione di elenco_canzoni.txt: java.io.FileNotFoundException: C:\
Program Files\Java\Eclipse\JArt\bin\.;.;c:\PROGRA~1\java\l ib\sound.jar;c:\PROGRA
~1\java\lib\jmf.jar;c:\PROGRA~1\java\lib;C:\Window s\java\Data\elenco_canzoni.txt
(La sintassi del nome del file, della directory o del volume Þ incorretta)
Allora ho messo un semplice
codice:
System.out.println(file.getAbsoluteFile().getParentFile().toString());
e mi è venuto sulla shell:
C:\Program Files\Java\Eclipse\JArt\bin\.;.;c:\PROGRA~1\java\l ib\sound.jar;c:\PRO
GRA~1\java\lib\jmf.jar;c:\PROGRA~1\java\lib;C:\Win dows\java
invece di quello che ho eseguendo da Eclipse:
C:\Program Files\Java\Eclipse\JArt
A cos'è dovuto questo errore e come faccio a indicargli che sta guardando la cartella sbagliata?