Java local

 

    //①带有语言和国家/地区信息的本地化对象  
    Locale locale1 = new Locale("zh","CN");   
      
    //②只有语言信息的本地化对象  
    Locale locale2 = new Locale("zh");   
      
    //③等同于Locale("zh","CN")  
    Locale locale3 = Locale.CHINA;   
      
    //④等同于Locale("zh")  
    Locale locale4 = Locale.CHINESE;   
      
    //⑤获取本地系统默认的本地化对象  
    Locale locale 5= Locale.getDefault();  

 国际化资源文件的命名规范规定资源名称采用以下的方式进行命名:<资源名>_<语言代码>_<国家/地区代码>.properties
其中,语言代码和国家/地区代码都是可选的。

package cn.cm;

import java.util.ResourceBundle;
import java.util.Locale;

public class Test {
    static public void main(String arg[]) {
        Locale loc;
        ResourceBundle bundle;
        loc = new Locale("en", "US");
        bundle = ResourceBundle.getBundle("Demo1", loc);
        
        System.out.println(bundle.getString("Hello"));
        System.out.println(bundle.getString("How_are_you"));
        System.out.println(bundle.getString("Well"));
        System.out.println("--------------------------");
        
        loc = Locale.CHINA;
        bundle = ResourceBundle.getBundle("Demo1", loc);
        System.out.println(bundle.getString("Hello"));
        System.out.println(bundle.getString("How_are_you"));
        System.out.println(bundle.getString("Well"));
    }
}

本地化必须将本地化资源文件和class放在一起。建议这样设置:

选中项目=> properties => libraries => Add class Folder=> Create new Folder => 创建一个文件夹res(也可以取别的名字)。然后在里面添加本地化资源文件。

Demo1_en_US.properties

Hello = Hello
How_are_you = How are you?
Well = Well

 Demo1_zh.properties  //这里eclipse中输入中文会自动转化为unicode编码

Hello = \u4F60\u597D
How_are_you = \u8FC7\u5F97\u600E\u4E48\u6837\uFF1F
Well = \u597D

 

posted @ 2015-09-29 10:13  牧 天  阅读(739)  评论(0)    收藏  举报