0

アプリケーションのロケールで数値をフォーマットおよび表示する方法を変更したいと考えています。私の場合、ロケールは「it_IT」なので、数字は「.」でフォーマットされます。GroupingSeparator として、',' を DecimalSeparator として使用します。これらのシンボルをグローバル アプリケーション レベルで変更または削除することはできますか?

4

1 に答える 1

0

何が欲しいかによって、さまざまな方法があります。以下のいくつかを参照してください...

1アプリケーションでデフォルトのロケールを設定します。Locale.setDefault(Locale.UK);これは GroupingSeparator としてコンマを使用し、DecimalSeparator としてポイントを使用します

2特定のロケールの java.text.NumberFormat を作成でき、NumberFormat.getInstance(Locale.UK)ソリューションのように動作します1 )

3上記のいずれかを使用して GroupingSeparator を削除します

NumberFormat formatUK = NumberFormat.getInstance(Locale.UK);
formatUK.setGroupingUsed(false);

編集:

import java.text.NumberFormat;
import java.util.Locale;
public class Foo {
    public static void main(String[] args) {
        NumberFormat formatUK = NumberFormat.getInstance(Locale.UK);
        double someValue = 1234567.8899;
        System.out.printf("%16s: %15s%n", "with grouping", formatUK.format(someValue));
        formatUK.setGroupingUsed(false);
        System.out.printf("%16s: %15s%n", "without grouping", formatUK.format(someValue));
    }
}
于 2013-10-03T11:04:55.233 に答える