Java.util.ResourceBundle.Control.getFallbackLocale()


描述

所述java.util.ResourceBundle.Control.getFallbackLocale(String baseName, Locale locale)方法返回被用作用于由ResourceBundle.getBundle工厂方法进一步资源包搜索一个备用的区域一个区域。每次没有找到baseName和locale的结果资源包时,就会从工厂方法调用此方法,其中locale是ResourceBundle.getBundle的参数或此方法返回的先前回退区域设置。

声明

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

public Locale getFallbackLocale(String baseName, Locale locale)

参数

baseName - 资源包的基本名称,ResourceBundle.getBundle无法找到任何资源包的完全限定类名(基本包除外)

locale - ResourceBundle.getBundle无法找到任何资源包的语言环境(基本包除外)

返回值

此方法返回后备搜索的区域设置,如果不需要进一步后退搜索,则返回null。

异常

NullPointerException - 如果baseName或locale为null

实例

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

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 fallback locale
      System.out.println("" + rbc.getFallbackLocale("hello", Locale.US));
   }
}

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

hello = Hello World!

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

el_GR