Zahlenformatierung

markus_k

Neues Mitglied
Hallo!

Habe folgendes Problem: Die Applikation die meine Firma entwickelt bietet dem Benutzer die Möglichkeit Trennzeichen die dann bei Beträgen zum Zug kommen selbst einzustellen.

Man kann Tausender-, Million- und Dezimal-Trennzeichen einstellen, d.h.

angenommen ich stelle für Tausender den Punkt,für Millionen das einfache Hochkomma und den Beistrich als Dezimal-Trenner ein, dann sollte die Zahl folgendermaßen aussehen:

1'234'567'890.897,00

Hab bereits ein wenig mit diversen Klassen wie DecimalFormat rumgespielt, aber ich krieg den Tausender-Trenner nicht hin.

Mein Code:

Code:
DecimalFormat format=new DecimalFormat();
DecimalFormatSymbols symbols=new DecimalFormatSymbols();
		
symbols.setDecimalSeparator(',');
symbols.setGroupingSeparator('\'');
format.setDecimalFormatSymbols(symbols);
double number=1234567890.89765;
System.out.println(format.format(number));

Kann mir hier jemand helfen? Danke im Voraus :)

lg, Markus
 

Michael...

Top Contributor
Man kann Tausender-, Million- und Dezimal-Trennzeichen einstellen, d.h.

angenommen ich stelle für Tausender den Punkt,für Millionen das einfache Hochkomma und den Beistrich als Dezimal-Trenner ein, dann sollte die Zahl folgendermaßen aussehen:

1'234'567'890.897,00
Gibt's denn sowas als "offizielles" Dezimalformat? Überlicherweise ist doch das Zeichen für die Zifferngruppierung einheitlich?

Vermutlich kann DecimalFormat sowas nicht liefern und man müsste so ein Format selbst definieren.
Am einfachsten wird es sein die Zahl zu analysieren und sich den String selbst zusammen zu basteln.
 
S

SlaterB

Gast
oder halb-manuell: DezimalFormat machen lassen und alle Trenzeichen bis auf das letzte durch das andere Trennzeichen ersetzen,
lastIndexOf() könnte helfen
 

Ähnliche Java Themen

Neue Themen


Oben