java resoursebundle,将resourceBundle与外部文件一起使用java

I have been reading other questions and answers around this but I am not getting how resource boundle works for completly.

I think it is similar at Joomla way of using multilingual options.

Basically you have files for the different messages you want to read for different languages.

So I created System.properties inside my src/Lang folder

Inside I create

STARTING_MYAPP=Starting my app

I might be wrong here, but anyways I am not able to read the default file. Right now I am brain death, and I cant make sense of anything I read

this is how I am doing this

Locale locale = Locale.getDefault();

String basename ="System";

ResourceBundle resourceBundle = ResourceBundle.getBundle(basename, locale);

System.out.println(resourceBundle.getString("STARTING_MYAPP"));

//UserPreferences UserPrefs = new UserPreferences();

when I call getBundle(),it has two inputs, the basename and the locale, right. I am having trouble with the basename. If my file is inside src/lang/System.properties, how should I look for it. basename="System", basename="Lang/System", basename="System.properties", basename="myProject.label".

I tried all of this and some more combinations but non work, I always get something like

Exception in thread "main" java.util.MissingResourceException: Can't find bundle for base name System, locale en_US

About the locale, how I leave it up to default, so I dont have to use a System_en_US.properties or something like that.

解决方案

The basename is structured like a fully qualified class name (because resource bundles can be classes), so if your classpath root is src and the resource is a file src/lang/System.properties, then the basename is lang.System.

About the locale, how I leave it up to

default, so I dont have to use a

System_en_US.properties or something

like that.

Simply use the getBundle() method that takes only the basename.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值