我来说说,看看这样可不可以:
1、将已知日期加上2年,
var oldDate,NewDate:TDate;
begin
NewDate:=StrToDate(IntToStr(StrToInt(DateFormat('yyyy',OldDate))+2)+'-'+DateFormat('mm',OldDate)+'-'+DateFormat('dd',OldDate));
end;
//得到NewDate
2、第二个问题是要得到已知日期的月份的第一天吗?如里是请看如下
var OriginDate,ThisMonthFirtDay,TDate;
begin
ThisMonthFirstDay:=StrToDate(DateFromat('yyyy',OriginDate)+'-'+DateFormat('mm',OriginDate)+'-1');
end;
var oldDate,NewDate:TDate;
yy,mm,dd:word;
1.
begin
DecodeDate(oldDate,yy,mm,dd);
Inc(yy,2);
NewDate:=EncodeDate(yy,mm,dd);
end;
2.
begin
DecodeDate(oldDate,yy,mm,dd);
dd:=1;
NewDate:=EncodeDate(yy,mm,dd);
end;