2013-04-25 14 views
27

Dieser Code ist von Charles Pettzold des "Programming Windows Sixth Edition" Buch:Was ist ToString ("N0") Format?

public object Convert(object value, Type targetType, object parameter, string language) 
{ 
    return ((double)value).ToString("N0"); 
} 

ToString("N0") soll den Wert mit Komma Trennzeichen und keine Dezimalstellen drucken. Ich kann den Verweis auf ToString Überladung und "N0" Format in der Dokumentation nicht finden. Bitte zeigen Sie mich an die richtige Stelle in .NET-Dokumentation.

Antwort

66

Überprüfen Sie die following article auf MSDN über Beispiele für das N Format. Dies wird auch im Artikel Standard Numeric Format Strings behandelt.

Relevante Auszug:

//   N:      1,054.32 
//   N0:     1,054 
//   N1:     1,054.3 
//   N2:     1,054.32 
//   N3:     1,054.322 
+14

Es wäre schön zu wissen, dass N0 von 1054,56, kehrt 1055 und nicht 1054. Ziemlich relevant! –

1

Die Liste der Formate here (im Double.ToString() - MSDN-Artikel) finden Sie als Kommentare im Beispielabschnitt.

2

Dies ist, wo die Dokumentation ist:

http://msdn.microsoft.com/en-us/library/dwhawy9k.aspx

Der numerische ("N") Format-Spezifizierer eine Zahl in einen String von die Form „wandelt -d, ddd, ddd.ddd ...“, wobei "-" eine negative Zahl Symbole, falls erforderlich, "d" eine Ziffer (0-9) ...

Und das ist, wo sie über den Standardwert (2) sprechen:

http://msdn.microsoft.com/en-us/library/system.globalization.numberformatinfo.numberdecimaldigits.aspx

 // Displays a negative value with the default number of decimal digits (2). 
     Int64 myInt = -1234; 
     Console.WriteLine(myInt.ToString("N", nfi)); 
Verwandte Themen