请教关于如何计算两个日期型变量之间的天数
如题! 问题点数:0、回复次数:7Top
1 楼quark(夸克)回复于 2002-12-03 12:40:22 得分 0
//==============================================================================
//计算日期间隔******************************************************************
//==============================================================================
procedure Interval(BeginDate, EndDate: TDateTime; var Diapause: DateRec);
var
BDay, BMonth, BYear: word;
EDay, EMonth, EYear: word;
begin
DecodeDate(BeginDate, BYear, BMonth, BDay);
DecodeDate(EndDate, EYear, EMonth, EDay);
with Diapause do//Diapause为间歇期
begin
DayCount := EDay - BDay;
MonthCount := EMonth - BMonth;
YearCount := EYear - BYear;
if DayCount < 0 then
begin
Inc(DayCount, 30);
Dec(MonthCount);
end;
if MonthCount < 0 then
begin
Inc(MonthCount, 12);
Dec(YearCount);
end;
end;
end;
Top
2 楼AFUSOFT(阿福)回复于 2002-12-03 12:41:13 得分 0
系统自带吗?Top
3 楼AFUSOFT(阿福)回复于 2002-12-03 12:44:09 得分 0
对了,能说说Diapause参数的使用方法吗?Top
4 楼westfly(左眼)回复于 2002-12-03 12:49:04 得分 0
Delphi里的TDateTime以是天为单位的,
故求两个日期间的天数只须直接相减取整(Trunc(d1 - d2))即可。
如:
ShowMessage('距明年还有: ' + IntToStr(Trunc(StrToDate('2003-01-01') - Now)) + '天。');
Top
5 楼AFUSOFT(阿福)回复于 2002-12-03 12:55:52 得分 0
谢谢
对了,我第一次提问,不知道怎么给分啊,我给了两次,怎么得分还是0啊Top
6 楼nicewin(未来水世界)回复于 2002-12-03 12:56:44 得分 0
直接减...对了,就是westfly(西翔)所说的Top
7 楼zsy_good(只要坚定不移的走下去,那一定会成功)回复于 2002-12-03 13:28:07 得分 0
直接减Top




