Possiamo specificare il percorso directory con il file di proprietà durante l'utilizzo di classe ResourceBundle in Java?

StackOverflow https://stackoverflow.com/questions/3598240

  •  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

È stato utile?

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");
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top