![]() |
Delphi-Version: 2007
DateTime in Datei speichern, aber nicht Double
Moin,
Ich stehe da grade vor einem Problem: Ich habe da Variablen, des Typs tDateTime, was ja im Grunde ein Double ist. Diese Zeitpunkte habe ich im Verlaufe des Programms mit "now" in meine Variable geschrieben. Die Zeitpunkte (mit Datum und Uhrzeit) habe ich in eine Textdatei geschrieben, doch leider nur in Double. Das ist aber nicht ausreichend, da jemand der in diese Datei schaut, die Zeitpunkte nicht ablesen kann. Nun was ich brauche: Ich soll die Zeitpunkte so in der Datei ablegen, dass sie zum einen Lesbar sind und zum anderen überall auf der Welt unmissverständlich sind (Amis ziehen ja den Monat nach vorne, weshalb "wir" oft Monat und Tag verwechseln und andersrum auch. Ich brauche eine Schreibweise, welche in Amerika UND hier direkt verstanden wird. Zusätzlich muss ich dieses Datum auch wieder aus der Datei in mein Programm einlesen können. Hat jemand eine Idee, was ich da machen kann? |
AW: DateTime in Datei speichern, aber nicht Double
Wie wäre es mit mit dem ISO-Format (
![]() |
AW: DateTime in Datei speichern, aber nicht Double
ISO-Datum:
YYYYMMDD Gruß K-H |
AW: DateTime in Datei speichern, aber nicht Double
|
AW: DateTime in Datei speichern, aber nicht Double
Beispiele:
Delphi-Quellcode:
FormatDateTime('yyyymmdd - hh:mm', now);
FormatDateTime('yyyy-mm-dd - hh:mm', now); FormatDateTime('yyyy/mm/dd - hh:mm', now); |
AW: DateTime in Datei speichern, aber nicht Double
Zitat:
Zitat:
|
AW: DateTime in Datei speichern, aber nicht Double
Hallo,
ich denke da bleibt keine andere andere Wahl als das Datum als Double UND im Klartext mit FormatDateTime in die Textdatei zu schreiben, und den Double-Wert in eindeutige Begrenzungs-Zeichen (z.B. geschweifte Klammer) zu setzen, damit du dann wieder zurückrechnen kannst. Als Format für FormatDateTime würde ich ShortDateFormat aus der SysUtils.pas nehmen |
AW: DateTime in Datei speichern, aber nicht Double
DateTimeToXMLTime gab es m.W. in Delphi 2007 noch nicht. Bleibt also FormatDateTime oder DateTimeToString.
Zitat:
Man kann es doch mit StrToDateTime zurücklesen. Muss aber auf die FormatSettings achten. Zitat:
Gerade das liefert doch je nach Land ein anderes Datumsformat, was der OP ja vermeiden will. |
AW: DateTime in Datei speichern, aber nicht Double
Zitat:
Zitat:
|
AW: DateTime in Datei speichern, aber nicht Double
Ok. Ich hab nun gelernt, dass es ein international gültiges ISO Format für Zeiten gibt und wie dieses aussieht. Das find ich schon mal super.
Ich habe nun benutzt: DateTimeToXMLTime () und XMLTimeToDateTime () Beide auch schon bei Delphi 2007 in der Unit XSBuiltIns vorhanden. Danke für den Tipp. Wenn ich ein tDateTime mit diesen Funktion einmal hin und her wechsele, ändern sich die Nachkommastellen minimal, weil er die Millisekunden abzuschneiden scheint, was aber nicht weiter schlimm ist, da ich diese nicht brauche. Somit ist mir auf jeden Fall geholfen und ich kann weiter machen. Danke für die Beteiligung und Hilfestellungen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:36 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 by Thomas Breitkreuz