2009-06-10 16 views
5

Esiste un modo per specificare la directory corrente in un file di proprietà java?Directory corrente nel file di proprietà java

vale a dire qualcosa come:

fileLocation={currentDir}/fileName.txt 
+0

A proposito di "fileLocation =/filename.txt.", O semplicemente "fileLocation = nomefile.txt"? –

risposta

6

file No. Proprietà non abbiamo strutture macro incorporati. È possibile ottenere a livello di codice la directory currect dell'utente che esegue l'app Java tramite user.dir system property.

+0

Grazie per la risposta. Puoi impostare la proprietà dei sistemi in questo modo? Ad esempio, se voglio temporaneamente impostare user.dir su una directory specifica? Ho provato a cambiarlo prima di eseguire un test unitario, ma non è stato ancora in grado di caricare il file, anche se il percorso restituito da getProperty ("user.dir") era corretto .... – Lehane

+0

No, la proprietà di sistema è impostata quando viene avviata la JVM, ma in seguito le modifiche non hanno alcun effetto. Non penso sia possibile cambiare la directory di lavoro di una JVM in esecuzione. –

+0

@ Michael - Grazie. – Lehane

3

io sono abbastanza sicuro che solo il default è la directory corrente, se non si può fare

fileLocation="./fileName.txt" 
2

Non conosco alcuna soluzione diretta per questo problema. È possibile caricare l'URL per il file delle proprietà e quindi caricare il nome del file da quel file:

ClassLoader loader = YourClass.class.getClassLoader(); 
URL resourceURL =loader.getResource("check.properties"); 
String fileToLoad = resourceURL.getPath() + <fileNameFromPropertyFile>; 
Problemi correlati