这篇文章主要介绍了Java语言资源国际化步骤解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
语言资源国际化步骤:
1. 定义资源文件(如:language),需要使用命令native2ascii命令进行转码;(native2ascii是jdk中的转码工具,在jdk的bin目录下)
2. 定义工具类(LangusgeUtils)读取资源文件;
3. 定义调用资源文件类(TestResourceBundle)
注意:native2ascii 命令必须进入到工程下面的资源文件夹发使用,例如:
D:\Adobe\eclipse\JavaObject\jdbc_pool_dao_shop\etc>native2ascii -encoding UTF-8 language language_zh_CN.properties
# 设置资源编码 # -encoding UTF-8 对源文件(language)进行编码,编码的方式为UTF-8 # 转码之后的文件language_zh_CN.properties zh表示语言为简体中文 CN表示国家 native2ascii -encoding UTF-8 language language_zh_CN.properties
相关配置文件
# 编码之前的资源文件 language user.login.info=1.用户登录 user.reg.info=2.用户注册 # 编码之后的资源文件 language_zh_CN.properties user.login.info=1.\u7528\u6237\u767b\u5f55 user.reg.info=2.\u7528\u6237\u6ce8\u518c
工具类
import java.util.Locale; import java.util.ResourceBundle; /** * 对象的序列化和反序列化 */ public class LanguageUtils { // private static ResourceBundle rBundle = ResourceBundle.getBundle("j0812",new Locale("en", "US")); // 注意:参数只写资源文件的前缀,不要写语言和国家相关的字符串 // 没有向上面一样定义语言和国家,那么程序运行时会找到操作系统当前使用的语言和国家 private static ResourceBundle rBundle = ResourceBundle.getBundle("language"); public static String getResourceByKey(String key) { return rBundle.getString(key); } }
测试调用工具类
public class TestResourceBundle { public static void main(String[] args) { String loginInfo =LanguageUtils.getResourceByKey("user.login.info"); String regInfo =LanguageUtils.getResourceByKey("user.reg.info"); System.out.println(loginInfo); System.out.println(regInfo); } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。