首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

有没函数,取得当月首日日期、最后一天的日期?解决方法

2012-04-25 
有没函数,取得当月首日日期、最后一天的日期?谢谢![解决办法]AnsiString fdatefdate2012-03-01fdate-

有没函数,取得当月首日日期、最后一天的日期?
谢谢!

[解决办法]
AnsiString fdate;
fdate="2012-03-01";
fdate=--StrToDateTime(fdate);
ShowMessage(fdate);

当前月份第一天减去1就是上个月最后一天.
[解决办法]
Word Year, Month, Day
TDate mydate=Date();
DecodeDate(mydate, Year, Month, Day);
TDate FirstDate,LastDate;
FirstDate=EncodeDate(Year, Month,1); //本月的第一天
if(Month<12){
Month++;
}else {
Year++;
Month=1;
}
LastDate=EncodeDate(Year, Month,1);//下月的第一天
LastDate--;//本月的最后一天
[解决办法]
cb里好象没这个函数,自己以前写的,挺简单的东西

C/C++ code
//---------------------------------------// 功能:根据日期,计算出当月最大天数// 返回值:当月天数// 参数:date是TDateTime类型的日期//---------------------------------------int __fastcall MonthDays(const TDateTime &date){    char days[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};    unsigned short y, m, d;    date.DecodeDate(&y, &m, &d);    // 闰年2月为29天    if (IsLeapYear(y))        days[1] = 29;    return days[m - 1];}
[解决办法]
TDateTime dt = Now();
TDateTime dt1 = IncDay(dt, (DayOfTheMonth(dt) - 1) * -1);
TDateTime dt2 = IncDay(dt, DaysInMonth(dt) - DayOfTheMonth(dt));
ShowMessage(dt1);
ShowMessage(dt2);

记得#include "DateUtils.hpp"

热点排行