求java国际化的源代码,老师让我们把项目中的中文放进一个配置文件里,要显示中文就中文,要英文就英文。
首先要创建国际化的资源文件。
根据自己的语言需求创建两个资源文件,(如一个代表中文,一个代表英文)
资源文件的后缀名是“properties”,建好资源文件后,就可以在里面插内容了,原理跟哈希表一样,key对应value,不同的资源文件的key要相同,value不同而已。
其次根据语言读资源文件
private static ResourceBundle bundleCN = ResourceBundle.getBundle("com.util.i18n.i3-label_zh_CN");// 传入:资源文件的包路径+名称(不用文件后缀)
// private static Locale localeEN = new Locale("en","US");
private static ResourceBundle bundleEN = ResourceBundle.getBundle("com..util.i18n.i3-label_en_US");
/**
* 中文简体
*/
public final static short ZH_CN = 0;
/**
* 美国英文
*/
public final static short EN_US = 1;
/**
* 中文简体,获取key对应的中文value
* @param key
* @return
*/
public static String getStringByCN(String key) {
return bundleCN.getString(key);
}
/**
* 美国英文,获取key对应的英文value
* @param key
* @return
*/
public static String getStringByUS(String key) {
return bundleEN.getString(key);
}
最后:基本原来就如上述了,建议自己手动尝试下,国际化不难的,有疑问的话加我QQ吧:104858668
读出来了,但是中文读出来是乱码,知道怎么转换吗?
中文需要unicode字符,我自己是用了一个“资源编辑器”插件,给个博客地址:
http://blog.sina.com.cn/s/blog_6f4c1ef80100s0tt.html#comment