![]() |
Mit Nullen auffüllen
Ich habe einen String der in eine Datenbank geschrieben wird. So nun ist der Wert 8 stellen lang. Soll vom Benutzer eingegeben ungefähr so: 598 - gespeichert werden soll er dann aber so: 00000598 - Wenn ich ein Nummerisches Feld in der Datenbank nehme geht es nicht da die vorgehenden nullen weggeschnitten werden - nehme ich ein CHAR feld kann ich es speichern wenn der Benutzer aber auch die vorhergegangenen Nullen eingibt. So ich dachte da nun an eine Funktion die bei dem OnExit Ereigniss die länge des eingegebenen Strings prüft und die vorhergehenen nullen auffüllt... aber wie? Bestimmt hat soetwas ja schon mal wer gemacht. Wär für ein wenig (oder auch viel) hilfe dankbar.
Danke :) |
Mal so kurz
Delphi-Quellcode:
while Length(aString) < 8 do
aString := '0' + aString; |
Es kann so einfach sein... Danke.
|
Zitat:
|
Na es geht aber auch komplizierter, oder :)
|
Logisch
Delphi-Quellcode:
Wenns gefällt, darfst Du auch diese Lösung nutzen. Oder lieber in Assembler ?
var
I, Miss: Integer; Nullen: string; begin Miss := 8 - Length(aString); for I := 1 to Miss do Nullen := Format('%s0', [Nullen]); aString := Format('%s%s', [Nullen, aString]); end; |
Dann das ganze in eine DLL packen, die DLL in die Ressource stecken und zur Laufzeit extrahieren. :mrgreen:
|
Ja so ungefähr hätte ich mir das vorgestellt... :roll:
|
Moin Zusammen,
es geht aber auch einfacher (und resourcenschonender als die erste Variante): ;-)
Delphi-Quellcode:
aString := StringOfChar('0',8-Length(aString))+aString;
|
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:35 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz