To prawdopodobnie proste pytanie i jestem pewien, że jest sposób na zrobienie tego przy pomocy string.format()
, NumberFormatInfo
, CultureInfo
lub pewnej ich kombinacji, ale muszę wyświetlać duże wartości liczbowe z 3 końcowymi miejscami dziesiętnymi, zamiast przecinka dziesiętnego dla separatora tysięcy, a następnie przecinek dla separatora milionów i wyższych.numer formatu z 3 miejscami po przecinku, dziesiętnym separatorem tysięcy i przecinkami po tym
wejściowy jest albo cała ilość lub liczbę, następnie podaje się do trzech miejsc po przecinku (20.000, 123.456, 12.2)
np
142650 powinien być wyświetlany jako 142,650.000
11200.50 powinny wyświetlacz jak 11,200.500
123.456 powinny pozostać 123.456
Przypuszczam, że to taka sama jak podzielenie v alue przez 1000, a następnie używając string.format("{0:f3}", value)
, ale miałem nadzieję znaleźć coś, co nie miało arytmetycznych.
String.Format("{0:#,#.000}", value)
dostaje mi bliskie, ale stawia wiodącą 0 w małych ilościach, więc 1,256 wyświetla jako 01.256, kiedy trzeba to pozostanie tylko 1,256
Co dokładnie przekazujesz dla wartości? 'String.Format (" {0: #, #. 000} ", 1256)" drukuje "1 256 000". Myślę, że musimy zobaczyć więcej kodu. –
Zobacz edytuj. Przepraszam za to. – Brett
Na podstawie Twojej edycji wygląda na to, że dzielisz teraz dane wejściowe na 1000. Jak już określiłeś, format f3 powinien dać ci dokładnie to, czego potrzebujesz w tym momencie. –