您的位置:首页 > 编程语言 > Java开发

java程序国际化

2016-09-23 20:06 127 查看
java程序国际化

Java程序的国际化主要通过如下三个类完成:
1;java.util.ResourceBundle:用于加载一个国家、语言资源包。

ResourceBundle的用法:
1:ResourceBundle
res=ResourceBundle.getBundle("Package.baseName",locale)
//从绑定资源文件中key获取相应的value方法
String
usernameKey=res.getString("username");
2:java.util.Locale:用于封装一个特定的国家/区域、语言环境。

Locale的三种实现方法:
1:Locale locale=new
Locale("zh","CN");
2:Locale
locale2=Locale.US;
3:Locale
locale3=Locale.getDefault();//默认
3:java.text.MessageFormat:用于格式化带占位符的字符串。
为了实现程序的国际化,必须先提供程序所需要的资源文件。资源文件的内容是很多key-value对。其中key是程序使用的部分,而value则是程序界面的显示字符串。
资源文件的命名可以有如下三种形式:
1:baseName _ language
_country.properties
2:baseName
_language.properties
3:baseName.properties
自己码的代码(供参考):

package
com.jasen.I18n;

import
java.util.Locale;
import
java.util.ResourceBundle;
import
java.util.Scanner;

public class
I18nDemo {

public static
void main(String[] args) {
Locale
locale=new Locale("zh","CN");
Locale
locale2=Locale.US;
Locale
locale3=Locale.getDefault();
String
s=locale.getLanguage();
System.out.println(s);
//绑定资源文件
ResourceBundle
res=ResourceBundle.getBundle("com.jasen.I18n.info",locale2);
Scanner
input=new Scanner(System.in);
//从绑定的资源文件中根据key获取对应的value
String
usernameKey=res.getString("username");
String
passwordKey=res.getString("password");
String
infosuccessKey=res.getString("info.success");
String
infofailKey=res.getString("info.fail");
System.out.println(usernameKey);
String
username=input.next();
System.out.println(passwordKey);
String
password=input.next();
if("admin".equals(username)&&"123".equals(password)){
System.out.println(infosuccessKey);
}else{
System.out.println(infofailKey);
}
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: