ResourceBundle.Control.NewBundle 方法

定义

如有必要,使用给定的类加载程序实例化给定格式和区域设置的给定捆绑包的资源捆绑包。

[Android.Runtime.Register("newBundle", "(Ljava/lang/String;Ljava/util/Locale;Ljava/lang/String;Ljava/lang/ClassLoader;Z)Ljava/util/ResourceBundle;", "GetNewBundle_Ljava_lang_String_Ljava_util_Locale_Ljava_lang_String_Ljava_lang_ClassLoader_ZHandler")]
public virtual Java.Util.ResourceBundle NewBundle(string baseName, Java.Util.Locale locale, string format, Java.Lang.ClassLoader loader, bool reload);
[<Android.Runtime.Register("newBundle", "(Ljava/lang/String;Ljava/util/Locale;Ljava/lang/String;Ljava/lang/ClassLoader;Z)Ljava/util/ResourceBundle;", "GetNewBundle_Ljava_lang_String_Ljava_util_Locale_Ljava_lang_String_Ljava_lang_ClassLoader_ZHandler")>]
abstract member NewBundle : string * Java.Util.Locale * string * Java.Lang.ClassLoader * bool -> Java.Util.ResourceBundle
override this.NewBundle : string * Java.Util.Locale * string * Java.Lang.ClassLoader * bool -> Java.Util.ResourceBundle

参数

baseName
String

资源捆绑包的基捆绑名称,一个完全限定的类名

locale
Locale

应为其实例化资源捆绑的区域设置

format
String

要加载的资源捆绑包格式

loader
ClassLoader

ClassLoader用于加载捆绑包

reload
Boolean

指示捆绑重载的标志; true 如果重新加载过期的资源捆绑包, false 则为

返回

资源捆绑实例,或者 null 找不到资源捆绑实例。

属性

例外

如果我们无法访问资源

如果无法实例化资源类,则

如果发生其他 I/O 异常,则为

注解

如有必要,使用给定的类加载程序实例化给定格式和区域设置的给定捆绑包的资源捆绑包。 如果给定参数没有可用的资源捆绑包,此方法将 null 返回。 如果由于意外错误而无法实例化资源捆绑包,则必须通过引发 ErrorException 直接返回 null来报告该错误。

reload如果标志是true,则表示正在调用此方法,因为以前加载的资源捆绑包已过期。

默认实现按如下所示实例化 ResourceBundle

<ul>

<li>通过调用 #toBundleName(String, Locale) toBundleName(baseName, locale)获取捆绑名称。</li>

<li>If format is "java.class"Class the bundle name is is loaded with the given class loader. 如果找到并可访问,ClassResourceBundle则会实例化。 如果捆绑类文件的包无条件打开,则可访问资源捆绑包;否则, IllegalAccessException 将引发。 请注意, reload 此默认实现中加载基于类的资源捆绑包时忽略该标志。 </li>

<li>If format is "java.properties"#toResourceName(String, String) toResourceName(bundlename, "properties") is called to get the resource name. 如果是reloadClassLoader#getResource(String) load.getResource则调用它以获取用于创建 a 的 URLConnectionAURLtrueURLConnection 用于 URLConnection#setUseCaches(boolean) 禁用基础资源加载层的缓存,并将 URLConnection#getInputStream() 获取 <代码>InputStream</code>。 否则, ClassLoader#getResourceAsStream(String) loader.getResourceAsStream 将调用它以获取一个 InputStream。 然后, PropertyResourceBundle 使用 InputStream..</li>

<li>如果format"java.class""java.properties"不是也不是,则引发一个IllegalArgumentException。</li>

</ul>

Java文档java.util.ResourceBundle.Control.newBundle(java.lang.String, java.util.Locale, java.lang.String, java.lang.ClassLoader, boolean)

本页的某些部分是根据 创建和共享的工作进行的修改,并根据 许可证中所述的条款使用。

适用于