当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java Java.util.ResourceBundle.Control.newBundle()用法及代码示例



描述

这个java.util.ResourceBundle.Control.newBundle(String baseName, Locale locale, String format, ClassLoader loader, boolean reload)方法为给定格式和区域设置的给定包名称实例化资源包,如有必要,使用给定的类加载器。

该方法返回null如果没有可用于给定参数的资源包。如果资源包由于意外错误而无法实例化,则必须通过抛出 Error 或 Exception 而不是简单地返回 null 来报告错误。

声明

以下是声明java.util.Control.newBundle()方法

public ResourceBundle newBundle(String baseName, Locale locale, String format, ClassLoader loader, boolean reload)

参数

  • baseName- 资源包的基本包名,一个完全限定的类名

  • locale- 应为其实例化资源包的语言环境

  • format- 要加载的资源包格式

  • loader− 缓存中已过期的资源包实例

  • reload- 指示包重新加载的标志;true如果重新加载过期的资源包,false除此以外

返回值

此方法返回资源包实例,或null如果找不到。

异常

  • NullPointerException− 如果 bundleName、locale、format 或 loader 为 null,或者如果 toBundleName 返回 null

  • IllegalArgumentException- 如果格式未知,或者为给定参数找到的资源包含格式错误的数据。

  • ClassCastException- 如果加载的类无法转换为 ResourceBundle

  • IllegalAccessException- 如果类或其空构造函数不可访问。

  • InstantiationException- 如果类的实例化由于其他原因失败。

  • ExceptionInInitializerError- 如果此方法引发的初始化失败。

  • SecurityException− 如果存在安全管理器并且拒绝创建新实例。

  • IOException− 如果使用任何 I/O 操作读取资源时发生错误

示例

下面的例子展示了 java.util.ResourceBundle.Control.newBundle() 方法的用法。

package com.tutorialspoint;

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();
      }
   }
}

假设我们有一个资源文件hello_en_US.properties在您的 CLASSPATH 中可用,具有以下内容。该文件将用作我们示例程序的输入 -

hello = Hello World!

让我们编译并运行上面的程序,这将产生以下结果 -

Hello World!

相关用法


注:本文由纯净天空筛选整理自 Java.util.ResourceBundle.Control.newBundle() Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。