MessageFormatの続き

はどーでもいい使い方しかしなかったので、ちょっとバージョンアップ。


数値のフォーマットを使うパターン。
DecimalFormatのスタイルが指定できる。


String base = "<{0,number,.0}><{1,number,currency}><{2,number,percent}>";

String result = MessageFormat.format(base, new Object[]{123.45, 10, 0.25});
System.out.println(result);
// <123.4><¥10><25%>


dateやらtimeやら。SimpleDateFormatのスタイルを指定できる。
longとかfullとか、詳細はJavadocにある。


String base = "<{0,date,yyyy/MM/dd HH:mm:ss}><{1,date,long}><{2,time,long}>";
Date date = new Date();

String result = MessageFormat.format(base, new Object[]{date, date, date});
System.out.println(result);
// <2007/04/12 16:11:42><2007/04/12><16時11分42秒 JST>


で、あとchoiceというのがあるけど、そもそもChoiceFormatというのを
使ったことがないので、よくわからん。