メモ  > Java > java.text.MessageFormat

java.text.MessageFormat

java.text.MessageFormatは文字列中に文字列を簡単に埋め込むためのクラスです。
JavaDoc
 
基本的には以下の構文を利用します。
java.text.MessageFormat.format(元の文字列, 置き換え対象1[, 置き換え対象2 ...]);
 
簡単な例です。
// {0}に対して置換
System.out.println(java.text.MessageFormat.format("test{0}", 1));
結果:test1

// 2つ以上に対して置換
System.out.println(
    java.text.MessageFormat.format("{0}、{1}、{2}", 1, "abcd", "テスト"));
結果:1、abcd、テスト

// 順番入れ替え
System.out.println(
    java.text.MessageFormat.format("{0}、{2}、{1}", 1, "abcd", "テスト"));
結果:1、テスト、abcd

// 文字列中に{0}を利用
System.out.println(java.text.MessageFormat.format("'{0}'、{0}", 1));
結果:{0}、1

// 'を表示
System.out.println(java.text.MessageFormat.format("''{0}''", 1));
結果:'1'
特徴は以下です。
・{0}から始まり{数字}の部分を引数の順番通りに置換します。
・{数字}を表示する場合、シングルクオートで囲みます。
・シングルクオートを表示する場合は2つ連続で記述します。
 
注意点
・数値を置換すると標準では1,000とカンマがついて置換されます。
※ カンマをつけたくない場合は文字列に変換しましょう。
・シングルクオートは特殊文字なので利用する場合は必ず2つ連続で記述する。

関連するページ

メモ  > JavaScript > 文字列関連
メモ  > Java > 文字列関連
メモ  > C# > .NET Framework 4のメール送信で、長い日本語ファイル名の添付をする方法
メモ  > PHP > 変数関連
メモ  > Android > Galaxy S2 LTE(SC-03D)の電池アイコンを変更する