类 ResourceBundle 的核心作用就是用来加载指定的属性资源文件(.properties 文件),其作用有点类似类 Properties。
public void test() {Locale locale = new Locale("zh", "CN");// 根据指定的语言环境和基名加载资源文件// 将指定的资源文件中的数据加载到ResourceBundle对象中,并返回该对象ResourceBundle bundle = ResourceBundle.getBundle("message", locale);// 从资源文件中获取指定key所对应的值// 从对象bundle中获取指定key所对应的值(荐)// 到对象bundle中获取指定key所对应的值// 去对象bundle中获取指定key所对应的值String title = bundle.getString("title");System.out.println("将语言环境指定为中文时:"+title);// 常量US引用的是一个Locale对象,这个对象代表着美式英文环境bundle = ResourceBundle.getBundle("message", Locale.US);title = bundle.getString("title");System.out.println("将语言环境指定为美式英语时:"+title);// 方法getDefault()会获取到一个Locale对象,这个对象代表着系统默认的语言环境bundle = ResourceBundle.getBundle("message", Locale.getDefault());title = bundle.getString("title");System.out.println("根据系统默认的语言环境:"+title);// 如果查找不到指定的资源文件,则根据当前系统的语言环境(即默认的Locale)来得到的本地化信息(即国际化资源文件)。bundle = ResourceBundle.getBundle("message", Locale.GERMAN);title = bundle.getString("title");System.out.println("找不到指定的资源文件时:" + title);// 如果只传入baseName,那么会根据系统默认的语言环境和指定的baseName去查找资源文件,当找不到时才会// 去查找只有baseName的资源文件bundle = ResourceBundle.getBundle("message");title = bundle.getString("title");System.out.println(title);}