![]() |
StrToDateTime mit Miliseconds?
Hallo zusammen,
Vielleicht ist es einfach zu heiss. Aber ich stecke hier fest. Über eine Schnittstelle erhalte ich ein XML in welchem unter anderem ein DATE und ein TIME Node enthalten ist. Date: 'yyyy-mm-dd' Time: 'hh-nn-ss-zzz'. Nun war ich so naiv und habe gemacht:
Delphi-Quellcode:
Dann zum Test:
function TServiceModule.GetTimeStamp(aTimeStamp: String): TDateTime;
begin var ts:= TFormatSettings.Create; ts.DateSeparator:= '-'; ts.TimeSeparator:= '-'; ts.ShortDateFormat := 'yyyy-mm-dd'; ts.ShortTimeFormat := 'hh-nn-ss-zzz'; Result:= StrToDateTime(aTimeStamp, ts); end;
Delphi-Quellcode:
Die Message ist dann leider: 2024-07-30 16-31-56-000
procedure TMainForm.Button1Click(Sender: TObject);
begin var tm:= ServiceModule.GetTimeStamp('2024-07-30 16-31-56-563'); ShowMessageFmt('%s',[FormatDateTime('yyyy-mm-dd hh-nn-ss-zzz',tm)]); end; Wie bringe ich die Milisekunden vom String in den Timestamp. Klar könnte ich den Time Value zerlegen und dann mit IncMiliseconds den DateTime erhöhen. Aber geht das einfacher? |
AW: StrToDateTime mit Miliseconds?
Der Separator für die Millisekunden ist nicht der TimeSeparator, sondern der DecimalSeparator. Setzt den auch noch entsprechend, dann sollte es gehen.
|
AW: StrToDateTime mit Miliseconds?
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:58 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