# Tausender Trennzeichen DecimalFormat & NumberFormat



## Varthor (7. Nov 2014)

Hallo zusammen,

ich sitze gerade an einem Programm welches eingegebene Zahlen formatiert,

beispielsweise

Eingabe: 1000000
Ausgabe: 1 Million

Eingabe: 123268
Ausgabe ca. 123.000

Mein Problem ist das anstatt dem oben gewünschten Punkt als tausender Trennzeichen ein Kommata steht.

Eingabe: 123268
Ausgabe ca. 123,000

Leider konnte ich mit DecimalFormat & NumberFormat keine Änderung des tausender Trennzeichens bewirken. Hat diesbezüglich jemand eine Idee?

Besten Dank
Varthor


```
private String format(long number)  
{

 String result = "";
....

{
// Diverse Fallunterscheidungen (z.B. ob Million, soll gerundet werden etc.)

// Im Falle der Umrechnung erfolgt eine Formatierung der Eingabe 123268 auf 123000
// Es folgt die Ausgabenformatierung

DecimalFormat df = (DecimalFormat) NumberFormat.getInstance(Locale.German);
 df.applyPattern("###,###.##");
result = df.format(number);

}

 return result;
}
```


----------



## Varthor (7. Nov 2014)

Habe es gerade selber, unsauber gelöst. 


```
NumberFormat df = NumberFormat.getInstance(Locale.GERMAN);
        result = df.format(number).replace(",", ".");
```
Gibt es vlt. trotzdem eine Anregung warum obiges nicht funktioniert?


----------



## arilou (10. Nov 2014)

```
DecimalFormat df = (DecimalFormat) (DecimalFormat.getInstance( Locale.GERMAN ));
DecimalFormatSymbols symbols = df.getDecimalFormatSymbols();
symbols.setGroupingSeparator( '.' );
df.setDecimalFormatSymbols( symbols );
// jetzt arbeitet df mit '.' als GroupingSeparator
```
Hat mich damals auch 'ne Weile gekostet, das rauszufinden :rtfm:


----------

