Komma (Gruppierungstrennzeichen) zur Nummerierung hinzufügen, ohne Dezimalstellen zu ändern?

8

Ich versuche, eine Zeichenfolge zu formatieren, um Kommas zwischen dreistelligen Gruppen hinzuzufügen

EG:

%Vor%

Ich versuche herauszufinden, wie man es mit DecimalFormat macht, bis zu diesem Punkt habe ich ein eigenes Skript benutzt, das übermäßig kompliziert erscheint. Ich kann nicht herausfinden, wie es geht, mit # werden einfach die abschließenden Nullen versteckt und mit 0 werden sie zu der Zahl hinzugefügt.

Das versuche ich gerade jetzt:

%Vor%

Ich bin sicher, dass es einfach sein muss, aber ich bin nicht sicher, wie es geht. Ich muss es nicht mit DecimalFormat machen, ich dachte nur, es wäre der leichtere Weg. Wie kann ich einfach die Kommas hinzufügen, ohne die Dezimalstellen zu verändern?

    
lisovaccaro 10.03.2013, 22:44
quelle

5 Antworten

15

Sie sollten ein NumberFormat-Objekt verwenden und es für die Gruppierung festlegen. Etwas wie

%Vor%

was zurückgibt:

%Vor%

Ein Vorteil davon ist, dass die Lösung länderspezifisch sein kann.

Bearbeitet
Zeigt nun ein Beispiel mit einem DecimalFormat-Objekt. Beachten Sie, dass Sie die Gruppierungsgröße festlegen sollten, wenn Sie diese verwenden.

    
Hovercraft Full Of Eels 10.03.2013, 22:46
quelle
11

Sie können auch etwas wie

ausprobieren %Vor% %Vor%     
arshajii 10.03.2013 22:55
quelle
2

Sie sollten genau das tun können, was Sie wollen:

Ссылка

%Vor%     
paulsm4 10.03.2013 22:49
quelle
1

Ich konnte keine der anderen Lösungen funktionieren lassen, einige um die Dezimalstellen herum, einige fügen nachgestellte Nullen hinzu oder einige entfernen nachgestellte Nullen.

Ich habe nicht vor, meine eigene Antwort zu akzeptieren, aber ich werde mein Skript veröffentlichen, falls jemand es nützlich findet.

%Vor%     
lisovaccaro 11.03.2013 00:02
quelle
0
  

Die einfachste Lösung

Warum verwenden Sie nicht die comma , flag mit printf .

%Vor%

Die Ausgabe wird

sein %Vor%

Und die gute Nachricht: Das tatsächlich generierte Trennzeichen hat is specific to the user’s locale

verwendet     
Basheer AL-MOMANI 08.02.2017 17:47
quelle

Tags und Links