ResourceBundle类:资源绑定类
功能:根据指定的文件名和本地化信息(语言代码,国别代码),找到对应的properties文件,获取文件内容。
properties文件名的命名规范:文件名_语言代码_国别代码.properties。
默认名:文件名.properties。
比如:
文件message_en_US.properties的内容:
STEP01=enUS_Study
文件message_jp.properties的内容:
STEP01=jp_勉強
文件message_zh_CN.properties的内容:
STEP01=zhCN_学习
文件message.properties的内容:
STEP01=Default_Study
ResourceBundle代码(Main.java):
package abc;
import java.util.Locale;
import java.util.ResourceBundle;
public class Main {
public static void main(String[] args) throws Exception {
//指定语言代码=en,国别代码=US,会找到message_en_US.properties文件
ResourceBundle rbUS1 = ResourceBundle.getBundle("properties.message", new Locale("en", "US"));
System.out.println(rbUS1.getString("STEP01"));
//指定US,会找到message_en_US.properties文件
ResourceBundle rbUS2 = ResourceBundle.getBundle("properties.message", Locale.US);
System.out.println(rbUS2.getString("STEP01"));
//指定语言代码=zh,国别代码=CN,会找到message_zh_CN.properties文件
ResourceBundle rbZH = ResourceBundle.getBundle("properties.message", new Locale("zh", "CN"));
System.out.println(rbZH.getString("STEP01"));
//指定语言代码jp,会找到message_jp.properties文件
ResourceBundle rbJP = ResourceBundle.getBundle("properties.message", new Locale("jp"));
System.out.println(rbJP.getString("STEP01"));
//不指定,会找到默认的message.properties文件
ResourceBundle rbDefault1 = ResourceBundle.getBundle("properties.message");
System.out.println(rbDefault1.getString("STEP01"));
//指定默认,会找到默认的message.properties文件
ResourceBundle rbDefault2 = ResourceBundle.getBundle("properties.message", Locale.getDefault());
System.out.println(rbDefault2.getString("STEP01"));
}
}
运行后结果:
【完】