delphi 如何求一段时间内月数的差?

来源:百度知道 编辑:UC知道 时间:2024/06/15 01:23:01
delphi 如何求一段时间内月数的差?
比如,2009-3-27与2009-3-28的差是0
2009-3-27与2009-4-2的差是1
2009-3-27与2009-5-3的差是2

效果1:
unit下的uses中加入DateUtils后
Monthsbetween(Date1,Date2);//Date1和Date2为你所需要的时间,所得值为integer类型

效果2:
其中的i、j、s、cha都为integer;
i:=(strtoint(formatdatetime('yyyy',date1))-strtoint(formatdatetime('yyyy',date2)))*12;//求年份差求月份
j:=strtoint(formatdatetime('mm',date1));//获取第一个日期的月份
s:=strtoint(formatdatetime('mm',date2));//获取第二个日期的月份
cha:=(i+j)-s;

设integer
t1=(s[0]-e[0])*12;
t1=t1+s[1]-e[1];