吴裕雄--天生自然java开发常用类库学习笔记:国际化程序

import java.util.ResourceBundle ;
public class InterDemo01{
    public static void main(String args[]){
        ResourceBundle rb = ResourceBundle.getBundle("Message") ;    // 找到资源文件,不用编写后缀
        System.out.println("内容:" + rb.getString("info")) ;        // 从资源文件中取得内容
    }
};
import java.util.ResourceBundle ;
import java.util.Locale ;
public class InterDemo02{
    public static void main(String args[]){
        Locale zhLoc = new Locale("zh","CN") ;        // 表示中国地区
        Locale enLoc = new Locale("en","US") ;        // 表示美国地区
        Locale frLoc = new Locale("fr","FR") ;        // 表示法国地区
        // 找到中文的属性文件,需要指定中文的Locale对象
        ResourceBundle zhrb = ResourceBundle.getBundle("Message",zhLoc) ;
        // 找到英文的属性文件,需要指定英文的Locale对象
        ResourceBundle enrb = ResourceBundle.getBundle("Message",enLoc) ;
        // 找到法文的属性文件,需要指定法文的Locale对象
        ResourceBundle frrb = ResourceBundle.getBundle("Message",frLoc) ;
        // 依次读取各个属性文件的内容,通过键值读取,此时的键值名称统一为info
        System.out.println("中文:" + zhrb.getString("info")) ;
        System.out.println("英语:" + enrb.getString("info")) ;
        System.out.println("法语:" + frrb.getString("info")) ;
    }
};
import java.util.ResourceBundle ;
import java.util.Locale ;
import java.text.* ;
public class InterDemo03{
    public static void main(String args[]){
        Locale zhLoc = new Locale("zh","CN") ;        // 表示中国地区
        Locale enLoc = new Locale("en","US") ;        // 表示美国地区
        Locale frLoc = new Locale("fr","FR") ;        // 表示法国地区
        // 找到中文的属性文件,需要指定中文的Locale对象
        ResourceBundle zhrb = ResourceBundle.getBundle("Message",zhLoc) ;
        // 找到英文的属性文件,需要指定英文的Locale对象
        ResourceBundle enrb = ResourceBundle.getBundle("Message",enLoc) ;
        // 找到法文的属性文件,需要指定法文的Locale对象
        ResourceBundle frrb = ResourceBundle.getBundle("Message",frLoc) ;
        // 依次读取各个属性文件的内容,通过键值读取,此时的键值名称统一为info
        String str1 = zhrb.getString("info") ;
        String str2 = enrb.getString("info") ;
        String str3 = frrb.getString("info") ;
        System.out.println("中文:" + MessageFormat.format(str1,"李兴华")) ;
        System.out.println("英语:" + MessageFormat.format(str2,"LiXingHua")) ;
        System.out.println("法语:" + MessageFormat.format(str3,"LiXingHua")) ;
    }
};
public class InterDemo04{
    public static void main(String args[]){
        System.out.print("第一次运行:") ;
        fun("LXH","Li","李兴华") ;    // 传入三个参数
        System.out.print("
第二次运行:") ;
        fun("MLDN") ;                // 传入一个参数
    }
    public static void fun(Object...args){    // 固定语法,输入任意多个数据,使用数组表示
        for(int i=0;i<args.length;i++){
            System.out.print(args[i] + "、") ;
        }
    }
};
public class InterDemo05{
    public static void main(String args[]){
        System.out.print("第一次运行:") ;
        Object[] arg1 = {"LXH","Li","李兴华"} ;
        fun(arg1) ;    // 传入三个参数
        System.out.print("
第二次运行:") ;
        Object[] arg2 = {"MLDN"} ;
        fun(arg2) ;                // 传入一个参数
        System.out.print("
第三次运行:") ;
        Object[] arg3 = {} ;        // 没有参数传入
        fun(arg3) ;
    }
    public static void fun(Object...args){    // 固定语法,输入任意多个数据,使用数组表示
        for(int i=0;i<args.length;i++){
            System.out.print(args[i] + "、") ;
        }
    }
};
import java.util.ResourceBundle ;
import java.util.Locale ;
import java.text.* ;
public class InterDemo06{
    public static void main(String args[]){
        Locale zhLoc = new Locale("zh","CN") ;        // 表示中国地区
        // 找到中文的属性文件,需要指定中文的Locale对象
        ResourceBundle zhrb = ResourceBundle.getBundle("Message",zhLoc) ;
        String str1 = zhrb.getString("info") ;
        System.out.println("中文:" + MessageFormat.format(str1,"李兴华")) ;
    }
};
info = Hello,{0}!
info = Bonjour,{0}!
import java.util.ListResourceBundle ;
public class Message_zh_CN extends ListResourceBundle{
    private final Object data[][] = {
        {"info","中文,你好,{0}!"}
    } ;
    public Object[][] getContents(){    // 覆写的方法
        return data ;
    }
};
info =u4f60u597duff0c{0}uff01
info = 1111HELLO