java.util.ResourceBundle.Control.newBundle(String baseName, Locale locale, String format, ClassLoader loader, boolean reload)%uA0方法实例为给定的格式和语言环境的给定包名称的资源包,使用给定的类加载器,如果必要的。
如果没有可用的给定参数的资源包此方法返回null。如果一个资源包,不能因为未预期的错误实例化,必须通过抛出错误或异常,而不是简单地返回null报告错误。
声明
以下是java.util.Control.newBundle()方法的声明
public ResourceBundle newBundle(String baseName, Locale locale, String format, ClassLoader loader, boolean reload)
参数
-
baseName%uA0-- 该资源包的基本包名称,完全限定类名
-
locale%uA0-- 对于该资源包应被实例化的语言环境
-
format%uA0-- 要加载的资源包格式
-
loader%uA0-- 已过期的缓存资源包实例
-
reload%uA0-- 该标志以表明束重新加载 true 如果重装一个过期的资源包,否则返回false
返回值
此方法返回的资源包实例,或者null,如果没有能找到。
异常
-
NullPointerException%uA0--如果bundleName, locale, format, 或 loader为null,或者空被toBundleName返回
-
IllegalArgumentException%uA0-- 如果格式是未知的,或者如果资源中找到给定参数包含异常数据。
-
ClassCastException%uA0-- 如果装载的类不能被强制转换为资源包
-
IllegalAccessException%uA0-- 如果类或它的无参构造函数是无法访问的。
-
InstantiationException%uA0-- 如果一个类的实例化失败,由于某些其他原因。
-
ExceptionInInitializerError%uA0-- 如果用这种方法引起的初始化失败。
-
SecurityException%uA0--%uA0如果安全管理器存在,并且创建新的实例被拒绝。
-
IOException%uA0-- 如果使用任何I/O操作读取资源时发生错误。
例子
下面的示例演示java.util.ResourceBundle.Control.newBundle()方法的用法。
package com.yiibai import java.util.Locale import java.util.ResourceBundle import java.util.ResourceBundle.Control public class ResourceBundleControlDemo { public static void main(String[] args) { // create a new ResourceBundle.Control with default format ResourceBundle.Control rbc = ResourceBundle.Control.getControl(Control.FORMAT_DEFAULT) ClassLoader cl = ClassLoader.getSystemClassLoader() // create a new bundle ResourceBundle a try { a = rbc.newBundle("hello", Locale.US, "java.properties", cl, false) System.out.println("" + a.getString("hello")) } catch (Exception ex) { ex.printStackTrace() } } }
假设在你的CLASSPATH中,资源文件hello_en_US.properties可用,包含以下内容。该文件将被用作输入到示例程序:
hello=Hello World!
让我们来编译和运行上面的程序,这将产生以下结果:
Hello World!