Se puede especificar la ruta de directorio con el archivo de propiedades durante el uso de la clase ResourceBundle en Java?
-
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
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");