gpt4 book ai didi

delphi - 在Delphi中将UTC字符串转换为TDatetime

转载 作者:行者123 更新时间:2023-12-03 15:01:13 25 4
gpt4 key购买 nike

var
tm : string;
dt : tdatetime;

tm := '2009-08-21T09:11:21Z';
dt := ?

我知道我可以手动解析它,但我想知道是否有任何内置函数或 Win32 API 函数可以执行此操作?

最佳答案

我不知道为什么有那么多人在不知道自己在说什么的情况下胡言乱语?我必须做这种卑微的工作;它是一个 RAD 工具吗?不过,我有时发现 Delphi 具有真正精湛的架构。

procedure setISOtoDateTime(strDT: string);
var
// Delphi settings save vars
ShortDF, ShortTF : string;
TS, DS : char;
// conversion vars
dd, tt, ddtt: TDateTime;
begin
// example datetime test string in ISO format
strDT := '2009-07-06T01:53:23Z';

// save Delphi settings
DS := DateSeparator;
TS := TimeSeparator;
ShortDF := ShortDateFormat;
ShortTF := ShortTimeFormat;

// set Delphi settings for string to date/time
DateSeparator := '-';
ShortDateFormat := 'yyyy-mm-dd';
TimeSeparator := ':';
ShortTimeFormat := 'hh:mm:ss';

// convert test string to datetime
try

dd := StrToDate( Copy(strDT, 1, Pos('T',strDT)-1) );
tt := StrToTime( Copy(strDT, Pos('T',strDT)+1, 8) );
ddtt := trunc(dd) + frac(tt);

except
on EConvertError do
ShowMessage('Error in converting : ' + strDT);
end;

// restore Delphi settings
DateSeparator := DS;
ShortDateFormat := ShortDF;
TimeSeparator := TS;
ShortTimeFormat := ShortTF;

// display test string
ShowMessage ( FormatDateTime('mm/dd/yyyy hh:mm:ss', ddtt) );
end;

http://coding.derkeiler.com/Archive/Delphi/comp.lang.pascal.delphi.misc/2006-08/msg00190.html

关于delphi - 在Delphi中将UTC字符串转换为TDatetime,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1597754/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com