Ich habe ein merkwürdiges Verhalten, ich benutze ein DecimalFormat, um ein Doppel in einen Währungswert zu konvertieren und wird das Dezimaltrennzeichen ändern, aber es scheint, dass das Dezimaltrennzeichen auf jeden Fall ignoriert wird.Währungs-Dezimaltrennzeichen funktioniert nicht
class Currency {
public static void main (String... args) {
DecimalFormat nf =(DecimalFormat) DecimalFormat.getCurrencyInstance(Locale.getDefault());
nf.setGroupingUsed(true);
DecimalFormatSymbols symbols = nf.getDecimalFormatSymbols();
symbols.setGroupingSeparator(' ');
symbols.setCurrencySymbol("EUR");
symbols.setDecimalSeparator('-');
nf.setDecimalFormatSymbols(symbols);
System.out.println(nf.format(13000.31));
}
}
so würde ich erwarten, dass das Ergebnis sein sollte: 13 000-31 EUR, wenn ich in einem Deutsch locale bin, wenn ich in einer US-locale bin sollte es EUR 13 000-31 sein. Aber was ich sehe, ist 13 000,31 EUR oder 13 000,31 EUR.
Es funktioniert gut mit dem Währungssymbol und mit dem Gruppierungstrennzeichen, aber das Dezimaltrennzeichen ignoriert in jedem Fall.
Hat jemand eine Idee warum ?! Dank
thx funktioniert, es funktioniert :) – dschmidt