So fügen Sie einer Zahl führende Nullen hinzu (Delphi-Format)

Unterschiedliche Anwendungen erfordern bestimmte Werte, um strukturellen Paradigmen zu entsprechen. Beispielsweise sind Sozialversicherungsnummern immer neunstellig. Einige Berichte erfordern, dass Zahlen mit einer festen Anzahl von Zeichen angezeigt werden. Beispielsweise beginnen Sequenznummern normalerweise mit 1 und werden ohne Ende erhöht, sodass sie mit führenden Nullen angezeigt werden, um eine visuelle Attraktivität zu erzielen.

Als ein Delphi-ProgrammiererIhr Ansatz zum Hinzufügen einer Zahl mit führenden Nullen hängt vom spezifischen Anwendungsfall für diesen Wert ab. Sie können einfach einen Anzeigewert auffüllen oder eine Zahl in eine Zeichenfolge konvertieren, um sie in einer Datenbank zu speichern.

Padding-Methode anzeigen

Verwenden Sie eine einfache Funktion, um die Anzeige Ihrer Nummer zu ändern. Verwenden Format um die Konvertierung durch Angabe eines Wertes für Länge (die Gesamtlänge der endgültigen Ausgabe) und die Nummer, die Sie auffüllen möchten:

str: = Format ('%. * d, [Länge, Anzahl])

instagram viewer

Um die Zahl 7 mit zwei führenden Nullen aufzufüllen, fügen Sie diese Werte in den Code ein:

str: = Format ('%. * d, [3, 7]);

Das Ergebnis ist 007 mit dem als Zeichenfolge zurückgegebenen Wert.

In String-Methode konvertieren

Verwenden Sie eine Auffüllfunktion, um führende Nullen (oder andere Zeichen) jederzeit anzuhängen, wenn Sie sie in Ihrem Skript benötigen. Verwenden Sie zum Konvertieren von Werten, die bereits Ganzzahlen sind:

Funktion LeftPad (Wert: Ganzzahl; Länge: Ganzzahl = 8; pad: char = '0'): string; Überlast; 

Start

 Ergebnis: = RightStr (StringOfChar (Pad, Länge) + IntToStr (Wert), Länge); 

Ende;

Wenn der zu konvertierende Wert bereits eine Zeichenfolge ist, verwenden Sie:

Funktion LeftPad (Wert: Zeichenfolge; Länge: Ganzzahl = 8; pad: char = '0'): string; Überlast;

Start

 Ergebnis: = RightStr (StringOfChar (Pad, Länge) + Wert, Länge);

Ende;

Dieser Ansatz funktioniert mit Delphi 6 und spätere Ausgaben. Beide Codeblöcke haben standardmäßig ein Füllzeichen von 0 mit einer Länge von sieben zurückgegebenen Zeichen; Diese Werte können an Ihre Anforderungen angepasst werden.

Wenn LeftPad aufgerufen wird, werden Werte gemäß dem angegebenen Paradigma zurückgegeben. Wenn Sie beispielsweise einen ganzzahligen Wert auf 1234 festlegen, rufen Sie LeftPad auf:

i: = 1234;
r: = LeftPad (i);

gibt einen String-Wert von zurück 0001234.