java国际化(简单说说)

java国际化的思路

一.程序需要支持哪些国家,语言环境-->资源文件中

资源文件是key-value对,key是不变的,但是value是随不同国家,语言而改变

二.主要通过三个类来实现:

java.util.ResourceBundle:用于装载特定的国家/区域,语言资源包

java.util.Locale:封装特定国家/区域,语言环境-->国家/区域及其相应代号,语言(相应代号)

java.text.MessageFormat:用于格式化带占位符的字符串

 1 import java.util.Locale;
 2 /**
 3  * getDisplayCountry()返回国家/地区名称
 4  * getCountry()返回国家/地区代码
 5  *getDisplayLanguage()返回语言环境
 6  *getLanguage()返回地区设置语言代码
 7  */
 8 public class LocaleList {
 9     public static void main(String[] args) {
10         //返回java所支持的全部全部国家和语言的数组
11         Locale [] localeList=Locale.getAvailableLocales();
12         //遍历数组的每个元素,依次获取所支持的国家和语言
13         for(int i=0;i<localeList.length;i++)
14         {
15             System.out.println(localeList[i].getDisplayCountry()
16                     +"="+localeList[i].getCountry()+"  "
17                     +localeList[i].getDisplayLanguage()+"="+localeList[i].getLanguage());
18         }
19     }
20 }

 

 

 1 import java.util.Locale;
 2 import java.util.ResourceBundle;
 3 
 4 public class Hello {
 5     public static void main(String[] args) {
 6         //取得系统默认的国家语言环境-->装载国家语言环境
 7         Locale myLocale=Locale.getDefault(Locale.Category.FORMAT);
 8         //根据指定的国家/语言环境加载资源文件-->加载资源包
 9         ResourceBundle bundle=ResourceBundle.getBundle("mess",myLocale);
10         //打印从资源文件中取得的信息
11         System.out.println(bundle.getString("hello"));
12     }
13 }

 

posted @ 2018-12-16 21:59  静心*尽力  阅读(836)  评论(0编辑  收藏  举报