java的国际化功能可以让你的程序根据实际情况显示当地的语言,是编写国际化程序必备的功能。具体的实现如下:
(1)引入国际化相关的类
与国际化相关的类有两个。
import java.util.Locale;
import java.util.ResourceBundle;
(2)获取当地特定的环境
Locale myLocale=Locale.getDefault();
当然,你也可以直接指定语言环境
Locale myLocale=Locale.US;
Locale myLocale=Locale.Chinese;
(3)资源文件的命名和编写
资源文件的后缀是.properties。命名一般格式是"basename_language_country.properties"。如你的资源的基本名字叫"my",中文资源:my_zh_CN,英文资源:my_en_US。不按照命名格式写的资源文件,程序是找不到的。
资源文件的编写方式是
key=value(如 labelname=fantastic(英文资源)labelname=好样的(中文资源))
注意不需要加引号,可以用”#“写注释
中文属于非西方字符,需要用JDK自带的工具native2ascii 处理。在cmd里输入如下:
native2ascii 资源文件名 目标文件名
资源文件经过转换后,在eclipse里打开,可以直接进行添加或者修改内容,无需在修改后再用native2ascii。
(4)加载资源包
ResourceBundle bundle=ResourceBundle.getBundle("my",mylocale);
(5)label例子
JLabel example=new JLabel(bundle.getString("labelname"));