Delphi/Lazarus: Aktuelles Datum und Uhrzeit ausgeben
Tipp von Stefan Trost | Letztes Update am 03.06.2023 | Erstellt am 17.07.2014
Heute möchte ich euch zeigen, wie ihr in eurer Delphi- oder Lazarus-Anwendung das aktuelle Datum und/oder die aktuelle Uhrzeit anzeigen beziehungsweise ausgeben könnt.
Wichtig sind dafür eigentlich nur zwei Funktionen: Mit der Funktion "now" erhalten wir die aktuelle Zeit als Zeitstempel vom Typ TDateTime und mit FormatDateTime können wir diesen Zeitstempel in einen String verwandeln, der Datum und/oder Zeit in einer beliebigen frei steuerbaren Darstellungsweise enthält. Diesen String können wir dann weiter verarbeiten und an einer beliebigen Stelle in unserem Programm ausgeben.
Schauen wir uns dazu zunächst als Beispiel einen kleinen Code an, der das aktuelle Datum und die aktuelle Zeit über ShowMessage als Meldung ausgibt:
var s: string; begin s := FormatDateTime('dd.mm.yyyy, hh:nn:ss', now); ShowMessage(s); end;
FormatDateTime benötigt zwei Parameter: Den Format-String und die darzustellende Zeit im Format TDateTime. Wir können hier als Zeit direkt die Funktion "now" verwenden, die auf diese Weise ihren Return-Wert direkt an die FormatDateTime-Funktion weitergeben kann.
Der Format-String
Über den Format-String können wir unser gewünschtes Format für das Datum und die Zeit angeben. In diesem String stehen bestimmte Buchstaben für die einzelnen Bestandteile des Datums und der Uhrzeit, so dass wir deren Ausgabe flexibel anpassen können.
Im Format-String steht "yyyy" beispielsweise für ein vierstelliges Jahr, "yy" für ein zweistelliges Jahr, "mm" für einen zweistelligen Monat und "dd", "hh", "nn" und "ss" entsprechend für Tag, Stunde, Minute und Sekunde mit je zwei Stellen und (je nach Bedarf) führenden Nullen falls die jeweiligen Werte kleiner als 10 ausfallen sollten. Falls wir stattdessen nur einen der beiden Buchstaben für Monat, Tag, Stunde, Minute oder Sekunde verwenden, wird die jeweilige Zahl ohne führende Nullen geschrieben.
In unserem Beispiel oben verwenden wir den Format-String "dd.mm.yyyy, hh:nn:ss". Das heißt wir beginnen mit dem Datum mit Punkten zwischen Tag, Monat und Jahr. Danach folgt mit einem Komma und einem Leerzeichen getrennt die Zeit mit einem Doppelpunkt zwischen Stunden, Minuten und Sekunden. Weitere Beispiele für andere Format-Strings möchten wir uns im nächsten Abschnitt ansehen.
Andere gebräuchliche Formatierungen
Andere Formatierungen des Datums und der Zeit sind möglich, indem man den Format-String entsprechend seinem eigenen Bedarf anpasst:
FormatDateTime('dd.mm.yyyy, hh:nn:ss', now); // 31.12.2023, 23:59:00 FormatDateTime('dd/mm/yyyy hh:nn:ss', now); // 31/12/2023 23:59:00 FormatDateTime('dd/mm/yy', now); // 31/12/99 FormatDateTime('yy/mm/dd', now); // 99/12/31 FormatDateTime('yyyy/mm/dd', now); // 2023/12/31 FormatDateTime('hh:nn:ss', now); // 23:59:00 FormatDateTime('hh:nn', now); // 23:59 FormatDateTime('yy-mm-dd-hh-nn-ss', now); // 99-12-31-23-59-00 FormatDateTime('d.m.yyyy', now); // 1.1.2000
Wie wir in den Beispielen sehen, können wir die Reihenfolge der einzelnen Komponenten beliebig ändern oder weglassen, die Zahlen ohne führende Nullen schreiben oder auch nur das Datum oder nur die Zeit alleine ausgeben.
Buchstaben mit Bedeutung im Format-String
Auch Buchstaben können innerhalb des Format-Strings verwendet werden. Dabei müssen wir aber aufpassen, falls wir Buchstaben verwenden möchten, die gleichzeitig auch für eine Zeit-Komponente stehen. Möchte man Zeichen wie "d" oder "y" nicht in ihre Zeitäquivalente umwandeln und stattdessen als solche beibehalten, muss man diese in doppelte Anführungszeichen (") stecken:
FormatDateTime('"day "d', now); // day 31
Hier möchten wir das Wort "day" zusammen mit dem Tag ausgeben. Damit das "d" und das "y" in "day" auch als solche ausgeschrieben werden, setzen wir "day " in Anführungszeichen.
Über den Autor
Software von Stefan Trost finden Sie auf sttmedia.de. Benötigen Sie eine individuelle Software nach Ihren eigenen Wünschen? Schreiben Sie uns: sttmedia.de/kontakt
Profil anzeigen
Ähnliche Themen
PHP: Aktuelles Datum und Zeit ermitteln
Tutorial | 0 Kommentare
VirtualBox: Datum und Uhrzeit ändern
Tutorial | 10 Kommentare
MySQL: Aktuelles Datum oder Zeit in Spalte schreiben
Tutorial | 0 Kommentare
JavaScript: Aktuelle Uhrzeit und Datum ermitteln
Tutorial | 3 Kommentare
XAMPP: SSL/HTTPS für lokale Projekte einrichten
Tutorial | 8 Kommentare
Delphi: Mehrzeilige Caption für TLabel (zur Laufzeit und Design Zeit)
Tutorial | 1 Kommentar
Delphi/Lazarus: Kommandozeilen Parameter Tutorial Teil 1: Senden
Tutorial | 0 Kommentare
Wichtiger Hinweis
Bitte beachten Sie: Die Beiträge auf askingbox.de sind Beiträge von Nutzern und sollen keine professionelle Beratung ersetzen. Sie werden nicht von Unabhängigen geprüft und spiegeln nicht zwingend die Meinung von askingbox.de wieder. Mehr erfahren.
Jetzt mitmachen
Stellen Sie Ihre eigene Frage oder schreiben Sie Ihren eigenen Artikel auf askingbox.de. So gehts.