Format-Strings |
|
| System | Win9x, WinNT, Win2000, WinXP, Vista, Win7 |
|---|---|
| Ab Delphi-Version | Delphi 1 |
| Letzte Änderung | 28.09.2010 |
Die Format-Strings verwendet man, um einen formatierten String zu erhalten. Dieser String kann aus einem Gleitkomma, Integer und/oder einem anderen String generiert werden. Die Format-Strings finden meist in der Funktion 'Format' Verwendung, die zwei Parameter erwartet. Der erste Parameter erwartet die Informationen zur Formatierung, der zweite die entsprechenden Quellen aus denen der String erstellt werden soll.Zur Verdeutlichung folgt jetzt erst mal ein Beispiel:
procedure TForm1.Button1Click(Sender: TObject);
var
Output: String;
begin
Output:=Format('%10.4f',[123.123456]);
Showmessage(Output);
end;
Es wird folgender Wert ausgegeben (Man beachte die Leerzeichen):
' 123,1235'
- Für das Prozentzeichen ('%') wurde die Zahl in den eckigen Klammern eingesetzt. Den Wert in den eckigen Klammern nennt man Argument.
- Der Breitenbezeichner gibt die Mindestlänge an ('10'). Sollte der resultierende String weniger Zeichen haben, wird dieser mit Leerzeichen aufgefüllt, wie dies in unserem Beispiel der Fall ist.
- Die Genauigkeit beträgt in unserem Fall 4 Stellen hinter dem Komma.
- Der Parameter 'f' steht für Festkommastring; das Argument muss also vom Typ Single, Double oder Extended sein.
Allgemein kann man folgendes zu dem Format-Bezeichner sagen:
"%" [index ":"] ["-"] [width] ["." prec] type
- Argumentindex-Bezeichner (optional): [index ":"]
- Angabe für die linksbündige Ausrichtung (optional): ["-"]
- Breitenangabe (optional): [width]
- Genauigkeitsangabe (optional): ["." prec]
- Das Zeichen für den Konvertierungstyp: type
Im obigen Beispiel wurde für den Konvertierungstyp 'f' eingesetzt, da Festkommastring resultieren sollte. Es folgt eine Liste für die unterschiedlichen Konvertierungstypen:
| Konvertierungstyp | Umwandlungstyp | Argumentetyp |
| d | Dezimalstring | Integer-Typen |
| e | Wissenschaftlicher String | Gleitkomma-Typen |
| f | Festkommastring | Gleitkomma-Typen |
| g | kürzester String (e oder f) | Gleitkomma-Typen |
| n | wie f mit Tausendertrennzeichen | Gleitkomma-Typen |
| m | Währungsstring | Gleitkomma-Typen |
| p | Pointer-String | Pointer |
| s | String | String-Typen (Char, ShortString) |
| x | Hexadezimalstring | Integer |
Weitere Informationen zum Thema Format-Strings finden Sie in der Online-Hilfe unter dem Stichwort "Format-Strings" oder "Format (Funktion)".
Zum Schluss noch einige Beispiele:
Edit1.Text:=Format('%20.2f',[123.123456]); ' 123,12'
//mind. 3 Zeichen, Dezimaltyp
Edit1.Text:=Format('%3d',[123456]); '123456'
//mind. 3 Zeichen, Währung (abhängig von dem eingestellten Währungsformat)
Edit1.Text:=Format('%3m',[123456.236]); '123.456,24 '
//mind. 3 Zeichen, 2 Kommazahlen, Tausendertrennzeichen, Festkommatyp
Edit1.Text:=Format('%3n',[123456789.123456]); '123.456.789,12'
//s.o. nur mit vier Kommastellen
Edit1.Text:=Format('%3.4n',[123456789.12 3456]); '123.456.789,1235'
//String mit mind. 10 Zeichen
Edit1.Text:=Format('%10s',['String']); ' String'
//Beispiel mehrerer Argumente in Verbindung mit einem zusätzlichen String
Format('Mein Name ist %s und ich bin %d Jahre alt',['Tom',20]);
Um ein Datum oder Zeitstempel zu Formatieren, nutzen Sie die Funktion FormatDateTime, die ähnlich funktioniert, wie die oben vorgstellte Format-Funktion. Die entsprechenden Argumente entnehmen Sie bitte der Onlinehilfe unter dem Stichwort FormatDateTime (Funktion).
- Text im StringGrid ausrichten
- StringGrid Text vertikal ausgeben
- Prüfen, ob eine Datei eine Win32-EXE (PE-Format) ist
- Alle Versionsinformationen auslesen
- Datei in einen String laden
- Strings in einem Bitmap ausgeben
- String in der Tag-Eigenschaft speichern
- Wort aus einem String an einer Position extrahieren
- String hinter Cursorposition einfügen
- Hinzufügen von Einträgen in Listen beschleunigen