温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Java语言资源国际化的示例分析

发布时间:2021-09-06 09:24:44 来源:亿速云 阅读:110 作者:小新 栏目:编程语言

这篇文章主要为大家展示了“Java语言资源国际化的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“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);
  }
}

以上是“Java语言资源国际化的示例分析”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI