|
||||||||||
| 前のパッケージ 次のパッケージ | フレームあり フレームなし | |||||||||
参照先:
説明
| クラスの概要 | |
|---|---|
| MessageFormatter | メッセージコードと引数からメッセージを組み立てるクラスです。 |
プロパティファイルに定義されたパターンを使用してメッセージを組み立てるためのクラスを提供します。
プロパティファイルのキーはメッセージコードと呼ばれます。 メッセージコードは以下の形式の文字列です。
[Level][SystemName][Number]
| 出力レベル | 意味 |
|---|---|
| F | Fatal (致命的) |
| E | Error (エラー) |
| W | Warning (警告) |
| I | Info (情報) |
| D | Debug (デバッグ) |
システム名がLogの場合、メッセージコードは次のようになります。
ELog0001 DLog1000
システム名にMessagesを付加した名前がメッセージのパターンを定義したプロパティファイルのベース名になります。
例えばシステム名がLogの場合、プロパティファイルのベース名はLogMessagesとなります。
実際のファイル名は、ベース名に拡張子.propertiesを付加してLogMessages.properties
のようになります。
ResourceBundle.Controlのプロパティ形式と同様に言語コードや国コードを持つプロパティファイルを用意することにより、メッセージを国際化することができます。
例えば日本語メッセージのパターンを定義したプロパティファイルはLogMessages_ja.propertiesやLogMessages_ja_JP.propertiesのようになります。
プロパティファイルの内容はメッセージコード=パターンの形式となります。
メッセージコードはそのままキーとして記述することも、システム名を省略して記述することもできます。 次の二つの例は等価です。
ELog0001=エラーが発生しました。理由:{0}
DLog1000=これはやばい。変数の値:{0}
E0001=エラーが発生しました。理由:{0}
D1000=これはやばい。変数の値:{0}
パターンはMessageFormatの形式に従います。
デフォルトではプロパティファイルは最初に必要になった時点で読み込まれ、そのままキャッシュされます。
アプリケーションの開発中など、プロパティファイルの変更をリアルタイムに反映させたい場合は、
ResourceBundle.clearCache()を呼び出すことでキャッシュがクリアされます。
|
||||||||||
| 前のパッケージ 次のパッケージ | フレームあり フレームなし | |||||||||