- Java.util 包类
- Java.util - 首页
- Java.util - ArrayDeque
- Java.util - ArrayList
- Java.util - Arrays
- Java.util - BitSet
- Java.util - Calendar
- Java.util - Collections
- Java.util - Currency
- Java.util - Date
- Java.util - Dictionary
- Java.util - EnumMap
- Java.util - EnumSet
- Java.util - Formatter
- Java.util - GregorianCalendar
- Java.util - HashMap
- Java.util - HashSet
- Java.util - Hashtable
- Java.util - IdentityHashMap
- Java.util - LinkedHashMap
- Java.util - LinkedHashSet
- Java.util - LinkedList
- Java.util - ListResourceBundle
- Java.util - Locale
- Java.util - Observable
- Java.util - PriorityQueue
- Java.util - Properties
- Java.util - PropertyPermission
- Java.util - PropertyResourceBundle
- Java.util - Random
- Java.util - ResourceBundle
- Java.util - ResourceBundle.Control
- Java.util - Scanner
- Java.util - ServiceLoader
- Java.util - SimpleTimeZone
- Java.util - Stack
- Java.util - StringTokenizer
- Java.util - Timer
- Java.util - TimerTask
- Java.util - TimeZone
- Java.util - TreeMap
- Java.util - TreeSet
- Java.util - UUID
- Java.util - Vector
- Java.util - WeakHashMap
- Java.util 包额外内容
- Java.util - 接口
- Java.util - 异常
- Java.util - 枚举
- Java.util 有用资源
- Java.util - 有用资源
- Java.util - 讨论
Java ResourceBundle.Control newBundle() 方法
描述
Java 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 ResourceBundle.Control newBundle() 方法的使用来获取资源捆绑。我们使用 getControl() 方法创建了使用 FORMAT_DEFAULT 的资源捆绑控制。然后使用美国区域设置的 newBundle() 方法使用 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); 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(); } } }
输出
假设我们在你的 CLASSPATH 中有一个名为hello_en_US.properties的资源文件,其内容如下。此文件将用作我们示例程序的输入 -
hello = Hello World!
让我们编译并运行以上程序,这将产生以下结果 -
Hello World!
为法语区域设置创建新的资源捆绑名称示例
以下示例显示了 Java ResourceBundle.Control newBundle() 方法的使用来获取资源捆绑。我们使用 getControl() 方法创建了使用 FORMAT_DEFAULT 的资源捆绑控制。然后使用法语区域设置的 newBundle() 方法使用 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); ClassLoader cl = ClassLoader.getSystemClassLoader(); // create a new bundle ResourceBundle a; try { a = rbc.newBundle("hello", Locale.FRANCE, "java.properties", cl, false); System.out.println("" + a.getString("hello")); } catch (Exception ex) { ex.printStackTrace(); } } }
输出
假设我们在你的 CLASSPATH 中有一个名为hello_fr_FR.properties的资源文件,其内容如下。此文件将用作我们示例程序的输入 -
hello = Bonjour le monde!
让我们编译并运行以上程序,这将产生以下结果 -
Bonjour le monde!
为德语区域设置创建新的资源捆绑名称示例
以下示例显示了 Java ResourceBundle.Control newBundle() 方法的使用来获取资源捆绑。我们使用 getControl() 方法创建了使用 FORMAT_DEFAULT 的资源捆绑控制。然后使用德语区域设置的 newBundle() 方法使用 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); ClassLoader cl = ClassLoader.getSystemClassLoader(); // create a new bundle ResourceBundle a; try { a = rbc.newBundle("hello", Locale.GERMANY, "java.properties", cl, false); System.out.println("" + a.getString("hello")); } catch (Exception ex) { ex.printStackTrace(); } } }
输出
假设我们在你的 CLASSPATH 中有一个名为hello_de_DE.properties的资源文件,其内容如下。此文件将用作我们示例程序的输入 -
hello = Hallo Welt!
让我们编译并运行以上程序,这将产生以下结果 -
Hallo Welt!