使用时,要先USES DateUtils;
解决方案 »
- AdvtoolbarPager 怎么用啊?都没有 NewPager
- 关于循环比较字符串的问题!
- 改写delphi碰到的问题, 请教
- 求救斑竹IndyFTP在changedir时出现死锁,顶贴有分!!
- Tlistview简单问题大家麻烦看下。
- 初学者怎么学delphi?(大家都来说说,争取做成精华啊)
- 如何提高对sqlserver数据库插入时的速度?(不用排序,直接添加就可以)
- 在paradox数据库中,能否象assess一样有自动增加编号字段,且以它为索引.
- 大虾们快帮忙!我要郁闷死了,快救命?!!(在线等候)
- 谁能帮帮啊,实在解决不了
- 关于lookup的问题,请高手教路,谢谢.
- 我查了以前的文件操作,没有解决问题
11:11 到11:21 只有9,
但是11:10 到其他时间就是正常的,不清楚。
估计是由于日期的问题,好像window自己的datetime是以一个起始时间的差
整数是对应的日期差,小数是对应的时间差,以后是怎么计算得到datetime值的
方法就不清楚了
由于计算机处理浮点形数据有误差,24*60 * abs(t1-t2)=37.999999998取整之后就成了37了。
要解决这个问题可以在时间差上加一个很小的一个数据,比如0.1秒,这样就能得到正确的结果了。function MyMinutesBetween(ANow, AThen:Tdatetime):integer;
begin
result :=trunc(24*60 * abs(ANow-AThen+0.1/24/60/60))end;
function MyMinutesBetween(ANow, AThen:Tdatetime):integer;
begin
result :=trunc(24*60 * (abs(ANow-AThen)+0.1/24/60/60))
end;
t1:=StrToDateTime('1111-01-01 11:11:00');
t2:=StrToDateTime('1111-01-01 11:49:00');
i:=MinutesBetween(t1,t2);
试试?