Delphi生成时间戳(秒级、毫秒级)

网上的引用DateTimeToTimeStamp生成毫秒级时间戳基本都是错误的:

现提供两种方法,算出的确认跟JAVA ,C++一样的

秒级:

Edit2.Text:=IntToStr(DateTimeToUnix(Now));
Edit3.Text:=IntToStr(DateTimeToUnix(Now)-8*60*60);

毫秒级 :

function GetTimeStampMilliseconds:string;
var
SysTime:TsystemTime;
timen,time2:TDateTime;
ss2,ss3:int64;
str2:string;
begin
GetLocalTime(SysTime);
timen:= SystemTimeToDateTime(SysTime);
time2 := EncodeDateTime( 1970, 1, 1, 0, 0, 0, 0 );
ss2 := 28800000;
ss3 := MilliSecondsBetween( timen, time2 );
ss3 :=ss3- ss2;
str2 := IntToStr(ss3);
result:=str2;
end;
function GetMillisecondTimeStamp: Int64;
var
st: TDateTime;
begin
st := EncodeDateTime( 1970, 1, 1, 0, 0, 0, 0 );
Result := MilliSecondsBetween( Now, st )-8*60*60*1000;
end;

效果截图

秒级:

毫秒级

posted @   IT情深  阅读(303)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示