Struts2 学习笔记17 I18N国际化

  讲解一下国际化的内容,比如书有些大的网站可以一键切换语言,例如中英切换,这时候就会用到国际化。但是由于struts2大多数是用来写后台,国际化并不是十分重要,而且用国际化开发会减慢开发的速度,大家只要了解就可以了。我们新建一个项目I18N,因为国际化这个单词internationalization,“I”与“N”之间有18个字母,用I18N表示。


Test.java

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


public class Test {
	public static void main(String[] args){
		ResourceBundle res = ResourceBundle.getBundle("app",Locale.US);
		System.out.println(res.getString("welcome.msg"));
	}
	
}

这里使用ResourceBundle类,新建两个.properities文件(app_en_US.properties和app_zh_CN.properties)命名前半段任意,后半段是固定的的,一个表示美国英文,一个表示中国汉语。

调用ResourceBundle的getBundle方法,传入参数app,这样可以找到要调用的资源文件,后面填入地区(注意是地区不是语言)。

再看一下app_en_US.properties

app_en_US.properties

welcome.msg=hello,sir

这样就可以打印出hello,sir。

但是在我们用中文的时候就会出现输出乱码的问题。其实是编码的问题。有一种解决办法是吧文件里的中文换成ascii码(如welcome.msg="u4e48"),用java命令 native2ascii 可以将中文转换为ascii码,但是当我们要修改的时候就会变的相当复杂。

这里推荐使用一个myeclipse插件,properties文件的Eclipse插件(plugin)

您可以通过Eclipse中的软件升级(Software Update)安装此插件,步骤如下: 

1、展开Eclipse的Help菜单,将鼠标移到Software Update子项,在出现的子菜单中点击Find and Install; 
2、在Install/Update对话框中选择Search for new features to install,点击Next; 
3、在Install对话框中点击New Remote Site; 
4、在New Update Site对话框的Name填入“PropEdit”或其它任意非空字符串,在URL中填入http://propedit.sourceforge.jp/eclipse/updates/; 
5、在Site to include to search列表中,除上一步加入的site外的其它选项去掉,点击Finsih; 
6、在弹出的Updates对话框中的Select the features to install列表中将所有结尾为“3.1.x”的选项去掉(适用于Eclipse 3.2版本的朋友); 
7、点击Finish关闭对话框; 
8、在下载后,同意安装,再按提示重启Eclipse,在工具条看到形似vi的按钮表示安装成功,插件可用。此时,Eclpise中所有properties文件的文件名前有绿色的P的图标作为标识。 


完成后,把文件用这个插件打开编写就可以了,如图。





原文地址:https://www.cnblogs.com/keanuyaoo/p/3297296.html