當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。