Java ResourceBundle.Control 的 toBundleName() 方法



描述

java ResourceBundle.Control toBundleName(String baseName, Locale locale) 方法将给定的 baseName 和 locale 转换为 bundle 名称。此方法从 newBundle 和 needsReload 方法的默认实现中调用。

声明

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

public String toBundleName(String baseName, Locale locale)

参数

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

  • locale − 应该实例化资源包的区域设置

返回值

此方法返回资源包的包名

异常

NullPointerException − 如果 baseName 或 locale 为null

获取美国区域设置的资源包名称示例

以下示例演示了 Java ResourceBundle.Control toBundleName() 方法的使用,以打印资源包名称。我们使用 getControl() 方法创建了一个使用 FORMAT_DEFAULT 的资源包控制。然后使用 toBundleName() 方法打印使用 hello_en_US.properties 文件的美国区域设置的资源包名称。

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

      // print the name
      System.out.println(rbc.toBundleName("hello", Locale.US));
   }
}

输出

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

hello = Hello World!

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

hello_en_US

获取法国区域设置的资源包名称示例

以下示例演示了 Java ResourceBundle.Control toBundleName() 方法的使用,以打印资源包名称。我们使用 getControl() 方法创建了一个使用 FORMAT_DEFAULT 的资源包控制。然后使用 toBundleName() 方法打印使用 hello_fr_FR.properties 文件的法国区域设置的资源包名称。

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

      // print the name
      System.out.println(rbc.toBundleName("hello", Locale.FRANCE));
   }
}

输出

假设我们在 CLASSPATH 中有一个名为hello_fr_FR.properties 的资源文件,其内容如下。此文件将用作我们示例程序的输入:

hello = Bonjour le monde!

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

hello_fr_FR

获取德国区域设置的资源包名称示例

以下示例演示了 Java ResourceBundle.Control toBundleName() 方法的使用,以打印资源包名称。我们使用 getControl() 方法创建了一个使用 FORMAT_DEFAULT 的资源包控制。然后使用 toBundleName() 方法打印使用 hello_de_DE.properties 文件的德国区域设置的资源包名称。

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

      // print the name
      System.out.println(rbc.toBundleName("hello", Locale.GERMAN));
   }
}

输出

假设我们在 CLASSPATH 中有一个名为hello_de_DE.properties 的资源文件,其内容如下。此文件将用作我们示例程序的输入:

hello = Hallo Welt!

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

hello_de
java_util_resourcebundle_control.htm
广告