当我们想要解决i18n国际化的问题是可以参考如下代码
首先我们要写说一下实现思路,思路就是写多个配制文件,动态的根据浏览器语言来读取配制文件中的信息
[list]
[*]我们可以先配置两个文件xx_zh_CN.properties,和xx_en_US.properties 并在文件中写入welcome.msg='中国'(此外应该注意-中国两个字应该是转码过的);welcome.msg='hello'
[*]接下来我们写下简单的JAVA类,在类中这样写
这样就能根据我们传入不同的国家来返回不同的值了.
*一般我们都是在web项目中在web项目中应用,我们的struts2 的一个inteceptor会自动的完成以上的任务,所以我们只要读取其中的值就行了 这里的参数是前面在welcome.msg='中国{0}'
[/list]
首先我们要写说一下实现思路,思路就是写多个配制文件,动态的根据浏览器语言来读取配制文件中的信息
[list]
[*]我们可以先配置两个文件xx_zh_CN.properties,和xx_en_US.properties 并在文件中写入welcome.msg='中国'(此外应该注意-中国两个字应该是转码过的);welcome.msg='hello'
[*]接下来我们写下简单的JAVA类,在类中这样写
//根据相应的API得到相应的值
//在编辑properties 时应该注意相应的格式,同时注意相应的编码
ResourceBundle res=ResourceBundle.getBundle("xx",Locale.CHINA);
System.out.println(res.getString("welcome.msg"));
这样就能根据我们传入不同的国家来返回不同的值了.
*一般我们都是在web项目中在web项目中应用,我们的struts2 的一个inteceptor会自动的完成以上的任务,所以我们只要读取其中的值就行了 这里的参数是前面在welcome.msg='中国{0}'
<s:property value="getText('welcome.msg',{'笨蛋'})" />
<s:text name="welcome.msg">
<s:param value="'你好,笨蛋'"></s:param>
</s:text>
[/list]