Format Ganzzahl Zeichenfolge mit 5 Stellen
-
08-07-2019 - |
Frage
Ich brauche einen String haben, basierend auf einer ganzen Zahl, die immer 5 Ziffern haben.
Beispiel:
myInteger = 999
formatedInteger = "00999"
Was ist der beste Weg, dies in klassischen ASP zu tun?
Lösung
Sie können String-Manipulation Funktionen für diese.
Dies setzt voraus, klassische ASP mit VBScript (ursprünglicher Version der Antwort).
Const NUMBER_DIGITS = 5
Dim myInteger
Dim formatedInteger
myInteger = 999
formatedInteger = Right(String(NUMBER_DIGITS, "0") & myInteger, NUMBER_DIGITS)
Hier eine optimierte Version, in einer Funktion eingewickelt, mit variabler Breite Polsterung bietet:
Const NUMBER_PADDING = "000000000000" ' a few zeroes more just to make sure
Function ZeroPadInteger(i, numberOfDigits)
ZeroPadInteger = Right(NUMBER_PADDING & i, numberOfDigits)
End Function
' Call in code:
strNumber = ZeroPadInteger(myInteger, 5)
Andere Tipps
So etwas ist, was ich die meiste Zeit gesehen habe:
function PadNumber(number, width)
dim padded : padded = cStr(number)
while (len(padded) < width)
padded = "0" & padded
wend
PadNumber = padded
end function
PadNumber(999, 5) '00999
Versuchen Sie, diese für einen Einzeiler (na ja, zwei mit Fehlervermeidung):
function padZeroDigits(sVariable, iLength)
if (iLength <= len(sVariable)) then padZeroDigits = sVariable : exit function : end if
padZeroDigits = string(iLength - len(sVariable),"0") & sVariable
end function
Wirklich, sollten Sie sich fragen, warum diese wünschen könnte.
Wenn dies für die Anzeige ist, dann ist es wahrscheinlich am besten, eine Zeichenfolge Formatierung-Funktion anzuwenden (es wird eine sein), um Ihre ganze Zahl, an der Stelle der Anzeige.
Auf der anderen Seite, wenn Sie es für die interne Verarbeitung benötigen, dh Sie sind immer fünf Stellen in einer Schleife zu erwarten oder was auch immer, aber Sie erwarten nicht Arithmetik zu tun auf dem Wert, wandeln dann die ganze Zahl in einen String und dann eine Verarbeitung tun.
Kurz gesagt, wandelt das Integer-Variable in einen String und speichern Sie in einer neuen Variablen, dann verwenden.