Java.util.ResourceBundle.getBundle()方法

Python/Java学习交流群:369606713


描述

所述java.util.ResourceBundle.getBundle(String baseName, Locale targetLocale, ResourceBundle.Control control)方法返回使用指定的基本名称,目标语言环境和控制,以及呼叫者的类加载器资源包。

声明

以下是java.util.ResourceBundle.getBundle()方法的声明

public static final ResourceBundle getBundle(String baseName, Locale targetLocale,ResourceBundle.Control control)

参数

baseName - 资源包的基本名称,完全限定的类名

locale - 需要资源包的语言环境

control - 为资源包加载过程提供信息的控件

返回值

此方法返回给定基本名称的资源包和语言环境中的Locale

异常

NullPointerException - 如果baseName,locales或control为null

MissingResourceException - 如果找不到任何语言环境中指定基本名称的资源包。

IllegalArgumentException - 如果给定控件未正确执行(例如,control.getCandidateLocales返回null。)请注意,控件的验证将根据需要执行。

实例

以下示例显示了java.util.ResourceBundle.getBundle()方法的用法。

package com.tutorialspoint;

import java.util.Locale;
import java.util.ResourceBundle;
import java.util.ResourceBundle.Control;

public class ResourceBundleDemo {
   public static void main(String[] args) {

      // create a new ResourceBundle.Control with default format
      ResourceBundle.Control rbc = ResourceBundle.Control.getControl(Control.FORMAT_DEFAULT);

      // create a new ResourceBundle with default locale and a Control
      ResourceBundle bundle = ResourceBundle.getBundle("hello", Locale.US, rbc);

      // print the text assigned to key "hello"
      System.out.println("" + bundle.getString("hello"));
   }
}

假设我们在CLASSPATH中有一个资源文件hello_en_US.properties,其中包含以下内容。此文件将用作示例程序的输入

hello = Hello World!

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

Hello World!