我想请问一下在delphi里面,如何对两个日期型数据进行比较,我在一个程序里如下写
var
ADatetime,BDatetime,CDatetime: tdatetime;
begin
Adatetime := now;
Bdatetime := strtodate('2004-5-15');
CDatetime := Adatetime - BDatetime;
showmessage(datetostr(CDatetime));
end;
结果显示的是 1899-12-30 怎么会出错啊?
var
ADatetime,BDatetime,CDatetime: tdatetime;
begin
Adatetime := now;
Bdatetime := strtodate('2004-5-15');
CDatetime := Adatetime - BDatetime;
showmessage(datetostr(CDatetime));
end;
结果显示的是 1899-12-30 怎么会出错啊?
解决方案 »
- delphi中的线程失效问题
- 高分求救,中断一个正在执行的查询时遇到"operation cannot be performed while executing asynchronously"错误
- 新手学delphi,请大侠指点初学的基本好书,最好是电子教程,在线等!!
- 关于UNIX下跑三层应用服务器的问题,高手请进!
- 何动态设置纸是a4 或b5
- 怎样调用编译好的包?
- ADOQuery为什么无法执行UPDATE命令?
- 检查磁盘空间?
- ADOQuery.Post报错,很神!高分相送
- 各位,我写了个多线程的Demo,请指点一下错误。
- 在MDI主窗体菜单中的保存功能如何可以保存动态生成的子窗体中RICHEDIT的内容到一个文件
- 急!急!急!能把一个string类型变量的值传给char类型的数组?
function DaysBetween(const ANow, AThen: TDateTime): Integer;
判断,类似的还有
yearsBetween,MonthsBetween等等,自己去看看帮助。
Math;var
ADatetime,BDatetime,CDatetime: tdatetime;
begin
Adatetime := now;
Bdatetime := strtodate('2004-5-15');
CDatetime := Trunc(Adatetime) - Trunc(BDatetime);
showmessage(datetostr(CDatetime));
end;
Math;var
ADatetime,BDatetime,CDatetime: tdatetime;
begin
Adatetime := now;
Bdatetime := strtodate('2004-5-15');
//CDatetime := Trunc(Adatetime) - Trunc(BDatetime);
//showmessage(datetostr(CDatetime));
showmessage(IntToStr(Trunc(Adatetime) - Trunc(BDatetime)));
end;
begin
showmessage(inttostr(DaysBetween(strtodate('2004/4/4'), now())));
end;