delphi怎样求出两时间之间相差多少秒?

daydreamer77 2001-08-31 03:06:20
...全文
3382 23 打赏 收藏 转发到动态 举报
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
dyny 2001-09-16
  • 打赏
  • 举报
回复
gz
windfantasy 2001-09-04
  • 打赏
  • 举报
回复
不是都说D6不好嘛,我还是用D5吧,太平一点。别没事找事了。
dq 2001-09-03
  • 打赏
  • 举报
回复
呵呵,难道你们用的不是D6?D6下是这个文件——
C:\Program Files\Borland\Delphi6\Source\Rtl\Common\DateUtils.pas
如果你们的Delphi版本里确实没有这个东东的话,就用我的方法吧,和它的源码里的实现本质上是一致的:)
daydreamer77 2001-09-03
  • 打赏
  • 举报
回复
D6免提,我用的是D5.5
windfantasy 2001-09-02
  • 打赏
  • 举报
回复
那上面2位是怎么用的呀?还连连称好呢!
我就是找不到有这个单元,难道他们用的是D6不成?
tikkypeng 2001-09-02
  • 打赏
  • 举报
回复
不知道那个东西是那里的~~呵呵~~
windfantasy 2001-09-02
  • 打赏
  • 举报
回复
怎么没人回答我?
OysterLQD(沉默者)、dq(独轻) ,都不在吗?
windfantasy 2001-09-02
  • 打赏
  • 举报
回复
DateUtils在哪里的?
我怎么找不到啊?不能用啊!
dq 2001-09-02
  • 打赏
  • 举报
回复
漂亮!OysterLQD(沉默者)!
又学了一招,原来从来没有发现有DateUtils这么个东东!

没必要再讨论下去了,把分给他吧:)
qiandeng 2001-09-01
  • 打赏
  • 举报
回复
gettickcout
OysterLQD 2001-09-01
  • 打赏
  • 举报
回复
Unit
DateUtils

function SecondsBetween(const ANow, AThen: TDateTime): Int64;
rainking 2001-09-01
  • 打赏
  • 举报
回复
Gettickcount是得到当前系统时间是多少微秒。
我一般这样写:
var
T1,T2:Double;
begin
T1:=GetTickCout;
do something;
t2:=Gettickcount;
lable1.caption:=Floattostr((t2-t1)/1000)+'秒';
end;
windindance 2001-09-01
  • 打赏
  • 举报
回复

最简单的方法:
var t1,t2:TDateTime;
n :integer;
n := integer(double(t2-t1) * 86400);
glink 2001-09-01
  • 打赏
  • 举报
回复
同意dq(独轻) 
DD88 2001-08-31
  • 打赏
  • 举报
回复
关注
yymmme 2001-08-31
  • 打赏
  • 举报
回复
但是用GetTickCount有可能出现异常,好像是吧?到达一定的值后,它好像是要重新计数的。
wwwwwwww 2001-08-31
  • 打赏
  • 举报
回复
如果计算含日期的时间差,用Gettickcount就可以了!
ecgnis 2001-08-31
  • 打赏
  • 举报
回复
Gettickcount是得到当前系统时间是多少微秒。
我一般这样写:
var
T1,T2:Double;
begin
T1:=GetTickCout;
do something;
t2:=Gettickcount;
lable1.caption:=Floattostr((t2-t1)/1000)+'秒';
end;
dq 2001-08-31
  • 打赏
  • 举报
回复
GetTickCount在计算任意两个时间的差的时候能有什么用?先不用管它(想了解用法查SDK)。

TDateTime是以天为单位的Double类型值,所以可以直接进行加减乘除运算,最后乖以24*3600就得到秒了。例如——

var
T1, T2: TDateTime;
D: Double;
begin
T1 := StrToDateTime('2001-8-31 16:00:00');
T2 := StrToDateTime('2001-9-1 16:00:00');
D := (T2 - T1) * 24 * 3600;
ShowMessage(FloatToStr(D));
end;
daydreamer77 2001-08-31
  • 打赏
  • 举报
回复
不行,此方法遇到跨日时便会出错,如果要连年月日也计算实在太麻烦了。
GetTickCount是什么?怎样用?
加载更多回复(3)
内容概要:本文系统梳理了多个科研领域的前沿研究与技术实现,重点涵盖FDTD方法中的完美匹配层(PML)研究,以及Matlab/Simulink在电磁、电力、控制、通信、信号处理、图像处理、路径规划、能源系统优化等领域的仿真与算法实现。文中列举了大量基于Matlab和Python的科研案例,如风电功率预测、负荷预测、无人机三维路径规划、电池系统故障诊断、雷达模拟、通信编码、微电网优化调度等,并强调结合智能优化算法(如粒子群、遗传算法、深度学习等)提升系统性能。同时,提供了丰富的代码资源与仿真模型,涵盖永磁同步电机控制、逆变器设计、多智能体任务分配、虚拟电厂调度等复杂系统,助力科研人员快速开展复现实验与创新研究。; 适合人群:具备一定编程基础,熟悉Matlab/Python工具,从事电气工程、自动化、通信、人工智能、新能源、控制科学等相关领域研究的研发人员及研究生。; 使用场景及目标:① 学习并实现FDTD仿真中的PML边界条件以有效抑制数值反射;② 掌握Matlab/Simulink在多物理场建模、控制系统设计与优化算法中的综合应用;③ 借助提供的代码资源完成科研复现、课程设计、竞赛项目或工程原型开发; 阅读建议:此资源以科研实战为导向,不仅提供理论方法,更强调代码实现与仿真验证。建议读者结合自身研究方向,按目录顺序查阅相关模块,下载配套代码进行调试与二次开发,以达到学以致用、融会贯通的目的。

5,943

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧