Possiamo specificare il percorso directory con il file di proprietà durante l'utilizzo di classe ResourceBundle in Java?
-
02-10-2019 - |
Domanda
Voglio mettere le mie proprietà dei file in qualche cartella, ma non sono in grado di leggerli, perché siamo in grado di specificare solo il nome del bundle di metodo getBundle()
statico su ResourceBundle oggetto.
fascio Supponiamo che è: myFile.properties
percorso corrente è: src
Voglio mantenere il mio file delle proprietà in: src / temp
Così, quando sto usando:
ResourceBundle.getBundle("temp/myfile", currentLocale);
è un'eccezione "non può trovare fascio". Voglio un modo per specificare il percorso. Vi prego di suggerire qualche modo per farlo.
Grazie
Soluzione
Utilizzare questa:
ResourceBundle.getBundle("temp.myfile", currentLocale);
Il baseName
fornito nella chiamata ResourceBundle.getBundle
si suppone che sia un nome di classe completo. Così deve essere scritto separato con i puntini. Si noti inoltre che questo rende temp
un pacchetto nel codice Java (che non credo sia una buona idea). E 'meglio mettere il file delle proprietà in un pacchetto adeguato come com.xyz.abc
. Poi si può accedere mediante
ResourceBundle.getBundle("com.xyz.abc.myfile", currentLocale);
Altri suggerimenti
E 'possibile che si stia utilizzando il nome del file sbagliato (myfile! = MyFile).
Per un myFile.properties
file in una directory temp
sul percorso di classe, questo codice dovrebbe funzionare:
ResourceBundle.getBundle("temp.myFile");