1

以下は Number Formatter のコードです。

double value = 12345.678;
// locale preference should be retrieved from user preferences
Locale defaultLocale = new Locale("en", "US", "USD");
NumberFormat nf = NumberFormat.getCurrencyInstance(defaultLocale);
String formattedValue = nf.format(value);
System.out.println(formattedValue);

出力値: $12,345.68 しかし、ここでは、出力値を $12,345.68 USD にしたいと思います。値の末尾にある USD(通貨コード) を取得する必要があります。

また、値を取得するためにWebサービスを呼び出しています。値を必須フィールドに渡し、フォーマットするにはどうすればよいですか?

4

2 に答える 2

12

このコードはトリックを行います:

    double value = 12345.678;
    java.util.Currency usd = java.util.Currency.getInstance("USD");
    java.text.NumberFormat format = java.text.NumberFormat.getCurrencyInstance(java.util.Locale.US);
    format.setCurrency(usd);
    System.out.println(format.format(value) + " " + usd.getCurrencyCode());

出力:

$12,345.68 USD
于 2012-05-21T20:01:02.740 に答える
5

その値を自分で追加できないのはなぜですか?

System.out.println(formattedValue + " USD");
于 2012-05-21T19:53:30.420 に答える