2017-06-05 1 views
0

String.Format zum Hinzufügen von Kommas in Tausend Platz einfach nur Leerzeichen ohne Komma hinzufügen.String.Format() zum Hinzufügen von Kommas in Tausend Platz für eine Nummer, die nicht funktioniert

Ich habe versucht:

var total = string.Format("{0:n0}", 12345); 
// expect: total = 12,345 
// actual: total = 12 345 

Alles, was ich bin fehlt?

+0

Mögliche Duplikat [.NET String .Format() zum Hinzufügen von Kommas in Tausenderstelle für eine Zahl] (https://stackoverflow.com/questions/105770/net-string-format-to-add-commes-in-house-places-for-a-number) – Liam

+3

Sie haben es versäumt, Ihr SO-Profil zu aktualisieren, um festzustellen, wo du lebst. Die genaue Formatierung ist kulturspezifisch und kann mit der Systemsteuerung überschrieben werden. Erwägen Sie CultureInfo.InvariantCulture.NumberFormat, wenn Sie auf Kommas bestehen. –

+0

Es hängt von Ihren aktuellen Kultureinstellungen ab. – Reniuz

Antwort

5

Dies ist eine Kultursache. In Ihrem Gebietsschema ist der Raum offenbar der Tausender-Spezifizierer. Ich sehe Kommas. Um eine spezifische Ausgabe des Gebietsschemas anzuzeigen, geben Sie dies explizit an. Eine sehr häufige Option ist "unveränderlich":

var total = string.Format(CultureInfo.InvariantCulture, "{0:n0}", 12345); 
3

Dies scheint die regionalen Einstellungen auf Ihrem PC zu sein:

enter image description here

Die DEMO funktioniert

+0

Das funktioniert bis zu dem Punkt, an dem Sie es auf einen anderen PC gelegt haben – Liam

Verwandte Themen