Se puede especificar la ruta de directorio con el archivo de propiedades durante el uso de la clase ResourceBundle en Java?

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

  •  02-10-2019
  •  | 
  •  

Pregunta

quiero poner mis archivos de propiedades en alguna carpeta, pero no soy capaz de leerlos porque podemos especificar sólo el nombre del paquete en el método getBundle() estática en ResourceBundle objeto.

paquete Supongamos que es: myFile.properties
camino actual es: src
Quiero mantener mi archivo de propiedades en: src / temp

Así que cuando estoy usando:

ResourceBundle.getBundle("temp/myfile", currentLocale);

que está lanzando una excepción "no puede encontrar paquete". Quiero un poco de forma de especificar la ruta de acceso. Por favor, me sugieren alguna manera de hacer esto.

Gracias

¿Fue útil?

Solución

Utilice esta:

ResourceBundle.getBundle("temp.myfile", currentLocale);

El baseName usados ??en la llamada ResourceBundle.getBundle se supone que es un nombre de clase completo. Así que tiene que ser escritos separados con puntos. También tenga en cuenta que esto hace temp un paquete en el código Java (que no creo que es una buena idea). Es mejor poner el archivo de propiedades en un paquete adecuado como com.xyz.abc. A continuación, puede acceder a él mediante

ResourceBundle.getBundle("com.xyz.abc.myfile", currentLocale);

Otros consejos

Es posible que esté utilizando el nombre de archivo incorrecto (mi_archivo! = MyFile).

Para una myFile.properties archivo en un directorio temp en la ruta de clases, este código debería funcionar:

ResourceBundle.getBundle("temp.myFile");
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top