国际化

java.lang.Locale类

获得此Java虚拟机当前线程默认的语言环境值:

Locale defaultLocale = Locale.getDefault();

获取当前Java虚拟机线程默认的国家和语言信息:

String country = defaultLocale.getCountry();//返回国家地区代码

String language = defaultLocale.getLanguage();//返回国家的语言

String displayCountry = defaultLocale.getDisplayCountry();//返回适合向用户显示的国家信息

String displayLanaguage = defaultLocale.getDisplayLanaguage();//返回适合向用户展示的语言信息

String displayName = defaultLocale.getDisplayName();//返回适合向用户展示的语言环境名

假如当前Java虚拟机线程所处的操作系统的区域语言设置为“中文(简体,中国)”,则上边的运行结果依次将会是:

    CN

    zh

    中国

    中文

    中文(中国)

根据国家地区和语言构造一个Locale(语言环境)

Locale currentLocale = new Locale(“zh”, ”CN”);


根据国家地区自动获取与之对应的资源文件
利用ResourceBundle类,代码如下:
import  java.util.Locale;
import  java.util.ResourceBundle;
public  class  TestLocale {
     public  static  void  main(String[] s) {
         // 资源包基名(包名+myproperties)
         String basename =  "me.gacl.i18n.resource.myproperties" ;
         // 设置语言环境
         Locale cn = Locale.CHINA; // 中文
         Locale us = Locale.US; // 英文
         /*
          * 根据基名和语言环境加载对应的语言资源文件,如果有多个资源文件,会遵循某种顺序查找,比如,加载英文文件时,先找myproperties_en_US.properties,
          * 如果找不到,则找myproperties_en.properties,如果还找不到则找myproperties_zh_CN.properties,接着找myproperties_zh.properties,
          * 直到找到一个为止,所以,如果英文文件不存在,可能会用到中文的来代替
          */
         //加载myproperties_zh_CN.properties或myproperties_zh.properties
         ResourceBundle myResourcesCN = ResourceBundle.getBundle(basename, Locale.CHINA);
         //加载myproperties_en_US.properties或myproperties_en.properties
         ResourceBundle myResourcesUS = ResourceBundle.getBundle(basename, Locale.US);
         // 加载资源文件后, 程序就可以调用ResourceBundle实例对象的 getString方法获取指定的资源信息名称所对应的值。
         String usernameCN = myResourcesCN.getString( "username" );
         String passwordCN = myResourcesCN.getString( "password" );
         String usernameUS = myResourcesUS.getString( "username" );
         String passwordUS = myResourcesUS.getString( "password" );
         System.out.println(usernameCN +  "--"  + passwordCN);
         System.out.println(usernameUS +  "--"  + passwordUS);
     }
}
然后在src目录下,建一个包用于存放资源文件,包名可以为:me.gacl.i18n.resource
在改包下新建两个资源文件:
myproperties_en_US.properties
myproperties_zh_CN.properties

版权声明:本文为博主原创文章,未经博主允许不得转载。

转载于:https://my.oschina.net/u/1987489/blog/491330

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值