decimal.ToString() gibt Nullen am Ende aus.

06/03/2008 - 14:01 von Martin Horst | Report spam
Hi,

ich lese aus einer SQL Datenbank einen decimal Wert mit 10 Vor- und 8
Nachkommanstellen aus. Wenn der decimal Wert z.B. 200 ist, kommt beim
ToString() Aufruf aber 200.00000000 raus. Ich habe schon alle Format
String durchpropiert, aber die runden oder schneiden gnadenlos nach n
Nachkommastellen ab. Ich möchte aber bei 200 nur 200 als String und bei
12.34 auch nur 12.34 und nicht 12.34000000. Habe ich da einen
Format-String übersehen oder muß ich da was selber machen?

Danke
Martin
 

Lesen sie die antworten

#1 Elmar Boye
06/03/2008 - 15:51 | Warnen spam
Hallo Marin,

Martin Horst schrieb:
ich lese aus einer SQL Datenbank einen decimal Wert mit 10 Vor- und 8
Nachkommanstellen aus. Wenn der decimal Wert z.B. 200 ist, kommt beim
ToString() Aufruf aber 200.00000000 raus. Ich habe schon alle Format
String durchpropiert, aber die runden oder schneiden gnadenlos nach n
Nachkommastellen ab. Ich möchte aber bei 200 nur 200 als String und bei
12.34 auch nur 12.34 und nicht 12.34000000. Habe ich da einen
Format-String übersehen oder muß ich da was selber machen?



Mit eigener Formatangabe klappt es da auch so:

decimal[] ds = new decimal[] { 12.34000000m, 12.00000000m, 1.23456789m, 0.465m, 0m};
foreach (decimal d in ds)
Console.WriteLine("{0}, {0:0.########}, {0:0.00######;;0}", d);

Mehr dazu unter:
http://msdn2.microsoft.com/de-de/li...99ak8.aspx
"Benutzerdefinierte Zahlenformatzeichenfolgen"

Gruß
Elmar

Ähnliche fragen