給妳個MFC的參考壹下吧。
看看是不是妳想要的。整個工程源代碼在最後:
部分函數:
class?CCalendarCore{
public:
CCalendarCore(void); ~CCalendarCore(void);public:
//判斷閏年,參數:年份,閏年,返回值:FALSE-失敗,TRUE-成功 static?BOOL?IsLeapYear(WORD?wYear,BOOL?&bLeapYear); //計算日期在年內的序數,參數:年,月,日,年內序數,返回值:FALSE-失敗,TRUE-成功 static?BOOL?GetDayOrdinal(WORD?wYear,?WORD?wMonth,?WORD?wDay,WORD?&wOrdinal); //從年內序數計算月、日,參數:年,年內序數,月,日,返回值:FALSE-失敗,TRUE-成功 static?BOOL?GetDateFromOrdinal(WORD?wYear,?WORD?wOrdinal,?WORD?&wMonth,?WORD?&wDay); //獲取農歷新年的公歷年內序數,參數:農歷年,返回值:農歷新年的公歷年內序數 static?short?LunarGetNewYearOrdinal(WORD?wLunarYear); //獲取農歷月的天數,參數:農歷年,農歷月,是否為閏月,返回值:該農歷月的天數,為0代表參數無效 static?WORD?LunarGetDaysofMonth(WORD?wLunarYear,WORD?wLunarMonth,BOOL?bLeapMonth); //獲取農歷某壹年的閏月情況,參數:農歷年,返回值,該年的閏月月份,0表示無閏月 static?WORD?LunarGetLeapMonth(WORD?wLunarYear); //公歷轉農歷,參數:公歷年、月、日,農歷年、月、日,是否為閏月,返回值:FALSE-失敗,TRUE-成功 static?BOOL?GetLunar(WORD?wYear,WORD?wMonth,WORD?wDay,WORD?&wLunarYear,WORD?&wLunarMonth,WORD?&wLunarDay,BOOL?&bLeapMonth); //農歷轉公歷,參數:家歷年、月、日,是否為閏月,公歷年、月、日,返回值:FALSE-失敗,TRUE-成功 static?BOOL?GetGregorian(WORD?wLunarYear,WORD?wLunarMonth,WORD?wLunarDay,BOOL?bLeapMonth,WORD?&wYear,WORD?&wMonth,WORD?&wDay); //得到指定年份的節氣信息,首個是小寒 static?BOOL?GetJieQi(WORD?wYear,WORD?wMonth,WORD?wJieQi[2]); //計算星期,返回-1表示輸入的年月日不正確或者超出年份範圍 static?short?GetDayOfWeek(WORD?wYear,WORD?wMonth,WORD?wDay); //計算某個月的天數,返回天數,如果返回0表示年或月有誤 static?WORD?GetDaysOfMonth(WORD?wYear,WORD?wMonth); //獲取數九、三伏 static?BOOL?GetExtremeSeason(WORD?wYear,short*?sYijiu,unsigned?short*?wChuFu,unsigned?short*?wMoFu); //獲取入梅、出梅 static?BOOL?GetMeiYu(WORD?wYear,unsigned?short*?wRuMeiOrd,unsigned?short*?wChuMeiOrd); //獲取某天的節日、節氣 static?BYTE?G_HolidayShow(WORD?wYear,WORD?wMonth,WORD?wDay,CString?&Buf); //獲取某天的農歷節日 static?BYTE?L_HolidayShow(WORD?wLYear,WORD?wLMonth,WORD?wLDay,BOOL?bLeapMonth,CString?&Buf);private:
//檢驗年、月、日的合法性,參數:年,月,日,返回值:FALSE-失敗,TRUE-成功 static?BOOL?DateCheck(WORD?wYear,WORD?wMonth,WORD?wDay); //展開大小月數據表(某壹年的),參數:農歷年,從上壹年十壹月開始到當前年份(閏)十二月的每月天數,返回值:FALSE-失敗,TRUE-成功 static?BOOL?LunarExpandDX(WORD?wLunarYear,WORD?wDayOfMonth[15]); //獲取農歷月份信息 static?BOOL?GetMonthInfo(WORD?wYear,UINT&?uData);};
鏈接:ht刪tp://pan.ba除idu.co中m/s/1c12文Hd2w 密碼:5xxr