取得某月的最后一天的日期的函数

 

待验证:

 

使用DELPHI自带函数

uses
  DateUtils;

 

 

StartOfTheMonth()
 
还有StartOfTheYear等相关函数,不用那么麻烦的

 

------------------------------------------------------------

 

 

// ******************************************************************************
    // 函数功能: 取得某月的最后一天的日期
    // 函数名称: cf_dateGetMonthLastDate(aDate:TDate):TDate;
    // 函数参数: aDate: 录入某天日期
    // 返回值: 返回该天所在月的最后一天的日期。
    // ******************************************************************************
    function cf_dateGetMonthLastDate(aDate: TDate): TDate;
    var
      AFirstDay, ANextFirstDay: string;
    begin
      try
        AFirstDay := FormatDateTime('yyyy-mm-dd', cf_dateGetMonthFirstDate
            (aDate));
        if StrToInt(Copy(AFirstDay, 6, 2)) < 12 then
        begin
          // 取当月第一天的日期
          ANextFirstDay := IntToStr(StrToInt(Copy(AFirstDay, 6, 2)) + 1);
          // 取下月第一天的日期
          Delete(AFirstDay, 6, 2); // 删除字串中的月份
          Insert(ANextFirstDay, AFirstDay, 6); // 插入当月的月份到字串中
          Result := StrToDate(AFirstDay) - 1; // 取得当月最后一天的日期
        end
        else
        begin
          Result := StrToDate(Copy(AFirstDay, 1, 4) + '-12-31');
        end;
      except
        Result := StrToDate('1900-01-01');
      end;
    end;

 

 

--------------------------------------------------------------------------------

取得某月的第一天:

 

formatdatetime('yyyy-mm-01',now())
简单的取本月第一天

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值