|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Dec 2000
Messaggi: 126
|
Java & directory corrente
Non riesco a trovare un metodo che mi restituisca la directory corrente ( per intenderci quella da cui lanci java, per es. C:\pippo\pluto>java myprog , la dir corrente è C:\pippo\pluto )... ho cercato in tutta la documentazione jdk.. possibile che non esista?
il fatto è che quando creo un oggetto dal nome di un file, per esempio quando creo una icona così: new Icon("mypicture.png"); se l'interprete java è stato lanciato da una dir diversa dalla root del mio pacchetto, il file mypicture.png non verrà trovato e quindi non verrà visualizzato. faccio un esempio: se io ho la mia classe java "mycode.class" nel pacchetto "it.ciaociao.test" che si trova nella dir C:\pkg , ovvero avrò C:\pkg\it\ciaociao\test\mycode.class , e nel codice viene richiamato il file mypicture.png che si trova in C:\pkg\mypicture.png , se io lancio l'interprete così: C:\pkg>java it.ciaociao.test.mycode il file .png viene trovato correttamente, ma se invece ho C:\>java -cp C:\pkg it.ciaociao.test.mycode allora il file .png non viene trovato perchè la dir corrente (C:\) non lo contiene!! Come faccio a ovviare al problema visto che a priori non posso sapere da dove verrà lanciato l'interprete java? ...non so se sono riuscito a spiegarmi bene.. spero abbiate capito |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jul 2002
Città: Milano
Messaggi: 19149
|
ti spiego come ottenere la directory corrente.
import java.util.Properties Properties propr = System.getProperties(); a questo punto in propr hai diverse proprietà, tra le quali la directory da cui è stato lanciato il comando java classedi prova String dircorrente = propr.getProperty("user.dir"); |
|
|
|
|
|
#3 | |
|
Senior Member
Iscritto dal: Jul 1999
Città: Torino
Messaggi: 2221
|
Quote:
props myProps = System.getProperties() myProps.put("user.dir", "TUA DIR") |
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Dec 2000
Messaggi: 126
|
Fantastico! grazie 1k
..e pensare che sono stato una giornata intera a cercare in mezzo alla documentazione java.. ora devo trovare il modo di sfruttare il tutto per far sì che in qualsiasi modo e in qualsiasi diresctory venga lanciato il mio prog riesca sempre a trovare i file che servono. magari provo a combinare dir corrente e classpath |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 03:14.



















