クラスPropertyResourceBundle

java.lang.Object
java.util.ResourceBundle
java.util.PropertyResourceBundle

public class PropertyResourceBundle extends ResourceBundle
PropertyResourceBundleは、プロパティ・ファイルからの一連のstatic文字列を使用してロケール用のリソースを管理する、ResourceBundleの具象サブクラスです。 リソース・バンドルの詳細については、ResourceBundleを参照してく さい。

ほかのタイプのリソース・バンドルと違い、PropertyResourceBundleはサブクラス化されません。 代わりに、リソース・データを 納するプロパティ・ファイルを提供します。 ResourceBundle.getBundleは、自動的に適切なプロパティ・ファイルを探し、そのファイルを参照するPropertyResourceBundleを作成します。 検索とインスタンス化の方法の詳細は、ResourceBundle.getBundleを参照してく さい。

次のは、ベース名MyResourcesのリソース・バンドル・ファミリのメンバーを示しています。 テキストでは、バンドル・ファミリのドイツ・メンバーであるバンドル「MyResources_de」を定義します。 このメンバーはPropertyResourceBundleに基づいているため、テキストはMyResources_de.propertiesファイルの内容です(関連するは、ListResourceBundleのサブクラスとして実装されるバンドルをこのファミリに追 する方法を示しています)。 この例のキーの形式は「s1」などです。実際のキーは、バンドルからオブジェクトを取り出すためにプログラ で使用するキーと同じであるかぎり、なんでもかまいません。 キーには、大文字/小文字の区別があります。

    # MessageFormat pattern
    s1=Die Platte \"{1}\" enthält {0}.
    # location of {0} in pattern
    s2=1
    # sample disk name
    s3=Meine Platte
    # first ChoiceFormat choice
    s4=keine Dateien
    # second ChoiceFormat choice
    s5=eine Datei
    # third ChoiceFormat choice
    s6={0,number} Dateien
    # sample date
    s7=3. März 1996

APIのノート:
PropertyResourceBundleは、プロパティ・ファイルを表すInputStreamまたはReaderから構築できます。 InputStreamからPropertyResourceBundleインスタンスを構築するには、入力ストリー をUTF-8でエンコードする必要があります。 デフォルトでは、入力ストリー の読取り時にMalformedInputExceptionまたはUnmappableCharacterExceptionが発生した 合、PropertyResourceBundleインスタンスは例外前の状態にリセットされ、ISO-8859-1で入力ストリー が再読取りされ、読取りが続行されます。 システ ・プロパティjava.util.PropertyResourceBundle.encodingが"ISO-8859-1"または"UTF-8"に設定されている 合、入力ストリー はそのエンコードでのみ読み取られ、無効な 序が検出されると例外がスローされます。 "ISO-8859-1"が指定されている 合、ISO-8859-1エンコーディングで表現できない文字は、「Java言語仕様」3.3セクションで定義されているUnicodeエスケープで表す必要がありますが、Readerを使用する他のコンストラクタにはその制限はありません。 このシステ ・プロパティでは、他のエンコーディング値は無視されます。 このクラスの初期化時にシステ ・プロパティが読み取られ、評価されます。 プロパティを変更または削除しても、初期化後に効果はありません。
実装要件:
PropertyResourceBundleサブクラスの実装は、それが複数のスレッドで同時に使用される 合、スレッドセーフである必要があります。 このクラスの非抽象メソッドのデフォルト実装はスレッドセーフです。
導入されたバージョン:
1.1
関連 目:
  • コンストラクタの詳細

    • PropertyResourceBundle

      public PropertyResourceBundle(InputStream stream) throws IOException
      InputStreamからプロパティ・リソース・バンドルを作成します。 このコンストラクタは、デフォルトでプロパティ・ファイルをUTF-8で読み取ります。 入力ストリー の読取り時にMalformedInputExceptionまたはUnmappableCharacterExceptionが発生した 合、PropertyResourceBundleインスタンスは例外前の状態にリセットされ、ISO-8859-1の入力ストリー が再読み込まれ、読取りが続行されます。 システ ・プロパティjava.util.PropertyResourceBundle.encodingが"ISO-8859-1"または"UTF-8"に設定されている 合、入力ストリー はそのエンコードでのみ読み取られ、無効な 序が検出されると例外がスローされます。 このシステ ・プロパティでは、他のエンコーディング値は無視されます。 このクラスの初期化時にシステ ・プロパティが読み取られ、評価されます。 プロパティを変更または削除しても、初期化後に効果はありません。
      パラメータ:
      stream - 読取り元のプロパティ・ファイルを表すInputStream。
      スロー:
      IOException - 入出力エラーが発生した 合
      NullPointerException - streamがnullである 合
      IllegalArgumentException - streamに形式が不正なUnicodeエスケープ・シーケンスが含まれる 合。
      MalformedInputException - システ ・プロパティjava.util.PropertyResourceBundle.encodingが"UTF-8"に設定され、streamに無効なUTF-8バイト・シーケンスが含まれている 合。
      UnmappableCharacterException - システ ・プロパティjava.util.PropertyResourceBundle.encodingが"UTF-8"に設定され、streamにマッピングできないUTF-8バイト・シーケンスが含まれている 合。
    • PropertyResourceBundle

      public PropertyResourceBundle(Reader reader) throws IOException
      Readerからプロパティ・リソース・バンドルを作成します。 コンストラクタPropertyResourceBundle(InputStream)の 合と異なり、入力プロパティ・ファイルのエンコーディングに関する制限はありません。
      パラメータ:
      reader - 読取り元のプロパティ・ファイルを表すReader。
      スロー:
      IOException - 入出力エラーが発生した 合
      NullPointerException - readerがnullである 合
      IllegalArgumentException - readerから形式が不正なUnicodeエスケープ・シーケンスが出現する 合。
      導入されたバージョン:
      1.6
  • メソッドの詳細

    • handleGetObject

      public Object handleGetObject(String key)
      クラスからコピーされた説明: ResourceBundle
      このリソース・バンドルから指定されたキーのオブジェクトを取得します。 このリソース・バンドルが、指定されたキーのオブジェクトを含まない 合は、nullを返します。
      定義:
      handleGetObject、クラスResourceBundle
      パラメータ:
      key - 目的のオブジェクトのキー
      戻り値:
      指定されたキーのオブジェクト、またはnull
    • getKeys

      public Enumeration<String> getKeys()
      このResourceBundleとその親バンドル内に含まれるキーのEnumerationを返します。
      定義:
      getKeys、クラスResourceBundle
      戻り値:
      このResourceBundleとその親バンドル内に含まれるキーのEnumeration
      関連 目:
    • handleKeySet

      protected Set<String> handleKeySet()
      このResourceBundleのみ含まれるキーのSetを返します。
      オーバーライド:
      handleKeySet、クラスResourceBundle
      戻り値:
      このResourceBundleにのみ含まれているキーのSet
      導入されたバージョン:
      1.6
      関連 目: