1.使用类实现 国际化
import java.util.Locale;
import java.util.ResourceBundle;
public class Secondi18n {
/**
* @param args
*/
public static void main(String[] args) {
Locale locale=null;
if(args.length==2){
locale=new Locale(args[0],args[1]);
}
else{
locale=Locale.getDefault();
}
//资源类 的命名 用Resources开头
ResourceBundle bundle=ResourceBundle.getBundle("Resources", locale);
System.out.println(bundle.getString("userName"));
System.out.println(bundle.getString("userPassword"));
System.out.println(bundle.getString("userAge"));
}
}
注意命名
import java.util.ListResourceBundle;
public class Resources_en_US extends ListResourceBundle {
static final Object[][] contents=new String[][]{
{"userName","Name"},
{"userPassword","Password"},
{"userAge","age"}};
@Override
protected Object[][] getContents() {
// TODO Auto-generated method stub
return contents;
}
}
import java.util.ListResourceBundle;
public class Resources_zh_CN extends ListResourceBundle {
static final Object[][] contents=new String[][]{
{"userName","姓名"},
{"userPassword","密码"},
{"userAge","年龄"}};
@Override
protected Object[][] getContents() {
// TODO Auto-generated method stub
return contents;
}
}
2.使用资源文件 带占位符
import java.text.MessageFormat;
import java.util.Date;
import java.util.Locale;
import java.util.ResourceBundle;
public class MessageFormatThree {
/**
* @param args
*/
public static void main(String[] args) {
Locale locale=null;
if(args.length==2){
locale=new Locale(args[0],args[1]);
}
else{
locale=Locale.getDefault();
}
//资源属性文件 用 MessageFormat 开头
ResourceBundle bundle=ResourceBundle.getBundle("MessageFormat", locale);
String userName=bundle.getString("userName2");
System.out.println(MessageFormat.format(userName, "xue",new Date()));
}
}
注意命名
MessageFormat_en_US.properties
userName=Name
userPassword=Password
userName2={0},Today is {1}
MessageFormat_zh_CN.properties
userName=姓名
userPassword=密码
userName2={0},今天{1}
3.Loacle 中显示java支持的 地区和语言
import java.util.Locale;
public class locale {
/**
* @param args
*/
public static void main(String[] args) {
Locale[] list = Locale.getAvailableLocales();
System.out.println("中文地区————地区简写——————语言中文——————语言简写");
for (int i = 0; i < list.length; i++) {
System.out.println(list[i].getDisplayCountry()+"————"+list[i].getCountry()+"——————"+list[i].getDisplayLanguage()+"——————"+list[i].getLanguage());
}
}
}
1
顶
4
踩
分享到:
2012-08-17 02:14
浏览 2293
评论