1.6のエミュレータで確認したところ、ioさんが仰る通り、コンマ区切りで
フォーマットされない不具合が有りました。
また、2.0以上のエミュレータ及び実機で確認したところ、以下のとおり順当
なコードで正常動作が確認できました。
NumberFormat nf = NumberFormat.getCurrencyInstance();
nf.setMaximumFractionDigits(0);
String str2 = nf.format(-5000000); // -\5,000,000 と、フォー
マットされる
1.6をどうしてもサポートしたい場合、例えば下記のようにしてはいかがで
しょうか。
public class MainActivity extends Activity {
private static String sFormat = String.format("%s#,##0.###",
NumberFormat.getCurrencyInstance().getCurrency().getSymbol());
private void method1() {
DecimalFormat df = new DecimalFormat(sFormat);
String str1 = df.format(-200000000); // -\200,000,000 と、
フォーマットされる
}
}
また、String.formatに指定するフォーマットを文字列リソースに出して、ロ
ケール別に切り替えることも出来ると思います。
有山
--
Keiji,
ml_an...@c-lis.co.jp