Java PropertyResourceBundle 類



簡介

Java PropertyResourceBundle 類是 ResourceBundle 的一個具體子類,它使用屬性檔案中的靜態字串集來管理特定區域設定的資源。以下是關於 PropertyResourceBundle 的重要要點:

  • 該類可以透過 InputStream 或 Reader 來構造,它們分別表示屬性檔案。

類宣告

以下是 java.util.PropertyResourceBundle 類的宣告:

public class PropertyResourceBundle
   extends ResourceBundle

欄位

繼承自 java.util.ResourceBundle 類的欄位。

類建構函式

序號 建構函式 & 描述
1

PropertyResourceBundle(InputStream stream)

此建構函式從 InputStream 建立一個屬性資源包。

2

PropertyResourceBundle(Reader reader)

此建構函式從 Reader 建立一個屬性資源包。

類方法

序號 方法 & 描述
1 Enumeration<String> getKeys()

此方法返回此 ResourceBundle 及其父捆綁包中包含的鍵的列舉。

2 Object handleGetObject(String key)

此方法從此資源包獲取給定鍵的物件。

3 protected Set<String> handleKeySet()

此方法返回僅包含在此 ResourceBundle 中的鍵的集合。

繼承的方法

此類繼承自以下類的方法:

  • java.util.ResourceBundle
  • java.util.Object

從 PropertyResourceBundle 例項獲取鍵的示例

以下示例演示了 Java PropertyResourceBundle getKeys() 方法的使用。我們建立了給定內容的 InputStream,然後使用該流建立了一個 PropertyResourceBundle 物件。然後使用 getKeys() 方法檢索鍵的列舉並列印條目。

package com.tutorialspoint;

import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.StringBufferInputStream;
import java.nio.charset.Charset;
import java.util.Enumeration;
import java.util.PropertyResourceBundle;

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

      // Prepare content for simulating property files
      String fileContent = 
         "# Integer value 1\n" +
         "s1 = 1\n" +
         "# String value PropertyResourceBundleDemo\n" +
         "s2 = PropertyResourceBundleDemo\n" +
         "# Date value Fri Jan 31 00:00:00 IST 3913\n" +
         "s3 = Fri Jan 31 00:00:00 IST 3913";
      InputStream propStream = new ByteArrayInputStream(fileContent.getBytes
         (Charset.forName("UTF-8")));

      try {
      
         // Create property resource bundle
         PropertyResourceBundle bundle = 
         new PropertyResourceBundle(propStream);

         // Get resource keys
         Enumeration<String> keys = bundle.getKeys();

         while(keys.hasMoreElements()) {
            System.out.println("Bundle key: "+keys.nextElement());
         }
      } catch (IOException e) {
         e.printStackTrace();
      }  
   }
}

輸出

讓我們編譯並執行以上程式,這將產生以下結果:

Bundle key: s2
Bundle key: s1
Bundle key: s3
廣告

© . All rights reserved.