legolas41: Zahlenformatierung

Hi!

Wende mich mit einem wie ich dachte simplen Problem an Euch.

Wenn Ich Zahlen, zum Beispiel einen Preis, in einem Formular übermittle, schneidet mir ASP immer die Nullen hinter dem Komma ab. So wird zum Beispiel aus 3,00 eine 3 oder aus 0,50 eine 0,5.

Das ist extrem ärgerlich. Aber egal, wie ich die Zahl formatiere, die Null ist immer weg. Kann es sein, dass das Abschneiden der Null schon im HTML Formular passiert? Oder doch erst, wenn sich ASP der Zahl annimmt?

Für Hilfe wäre ich dankbar.

Liebe Grüße
Legolas

  1. Hi Legolas,

    Zahlen werden maschinenintern _immer_ ohne Formatierung abgespeichert. Eine drei mit zwei Nachkomma-Nullen ist weder in Float- noch in Integer-Umgebung von einer Drei mit fünf Nachkomma-Stellen zu unterscheiden (und "3.00" als Strings ist halt keine Zahl, sondern ein Text). Genauso wenig, wie sich die 3.0 auch merkt dass sie bei Dir in roter Farbe und 12 Pixel Höhe dargestellt wird.

    Wenn Du die Zahl wieder ausgibst, bist Du auch wieder dafür verantwortlichm dass Du sie richtig formatierst (Farbe, Größe, Nachkomma-Stellen und -Rundung, etc.).

    Ciao
    Hans-Peter

  2. Hi,

    also wie im anderen Thread schon erwähnt ist der Programmiersprache deine gewünschte Formatierung egal. Je nach Sprache gibt es dafür dann aber verschiedene Funktionen um die Zahlen wieder auf Standardformate zu bringen, sowie Funktionen für die benutzerdefinierte Formatierung:
    FormatNumber(Expression [,NumDigitsAfterDecimal [,IncludeLeadingDigit [,UseParensForNegativeNumbers [,GroupDigits]]]])
    FormatCurrency(Expression[,NumDigitsAfterDecimal [,IncludeLeadingDigit [,UseParensForNegativeNumbers [,GroupDigits]]]])
    FormatPercent(Expression[,NumDigitsAfterDecimal [,IncludeLeadingDigit [,UseParensForNegativeNumbers [,GroupDigits]]]])
    Die sind im Plattform-SDK von Microsoft auch genauer erklärt, wahrscheinlich auch unter msdn.microsoft.com

    Rouven