Questa è probabilmente una domanda semplice, e sono sicuro che c'è un modo per farlo con string.format()
, NumberFormatInfo
, CultureInfo
o qualche combinazione di essi, ma ho bisogno di visualizzare grandi valori numerici con 3 cifre decimali finali, un decimale invece di una virgola per il separatore delle migliaia e quindi una virgola per il separatore di milioni e su.con 3 cifre decimali finali, un separatore decimale di migliaia e virgole dopo quello
L'ingresso è un numero intero oppure un numero seguito da fino a tre cifre decimali (20000, 123.456, 12.2)
Ad esempio:
142650 dovrebbero visualizzare come 142,650.000
11200,50 voglia display come 11,200.500
123.456 dovrebbe rimanere 123.456
suppongo che sia lo stesso che divide la v Alue per 1000 e quindi utilizzando string.format("{0:f3}", value)
, ma speravo di trovare qualcosa che non ha preso l'aritmetica.
String.Format("{0:#,#.000}", value)
mi viene vicino, ma mette un 0 su piccoli numeri, quindi 1.256 è la visualizzazione come 01,256, quando ne ho bisogno di restare solo 1.256
Che cosa state passando per il valore? 'String.Format (" {0: #, #. 000} ", 1256)' stampa "1,256.000". Penso che dobbiamo vedere più del tuo codice. –
Vedi modifica. Mi dispiace per quello – Brett
In base alla tua modifica, sembra che tu stia dividendo l'input per 1000. Come dici, il formato f3 dovrebbe darti esattamente quello che ti serve a questo punto. –