获得日期-星期

CTime tm = CTime::GetCurrentTime();
CString tmstr, WeekDay;
WeekDay = GetWeekDay();
tmstr.Format(_T("%04d-%02d-%02d  %02d:%02d:%02d  %s"), tm.GetYear(), tm.GetMonth(), tm.GetDay(), tm.GetHour(), tm.GetMinute(), tm.GetSecond(), WeekDay);

CString CMyTestDlg::GetWeekDay()
{
	COleDateTime t, tWeekBegin, tWeekEnd;
	t = COleDateTime::GetCurrentTime();
	// t.SetDate(2013,3,24);
	/*!<这里需要注意的是西方人的习惯和我们不一样,他们把星期天当做*/
	/*!<每个星期的第一天,如下面的函数GetDayOfWeek就是如此,所以我做了下面的一些转换*/
	int nWeek = t.GetDayOfWeek();
	COleDateTimeSpan tsWeekBegin,tsWeekEnd;
	if(1 == nWeek)
	{
		tsWeekBegin.SetDateTimeSpan(6, 0, 0, 0);
		tsWeekEnd.SetDateTimeSpan(0, 0, 0, 0);
	}
	else
	{
		tsWeekBegin.SetDateTimeSpan(nWeek - 2, 0, 0, 0);
		tsWeekEnd.SetDateTimeSpan(8 - nWeek, 0, 0, 0);
	}
	tWeekBegin = t - tsWeekBegin;
	tWeekEnd   = t + tsWeekEnd;
	CString str, str1, str2, WeekDayT;
	str  = t.Format(L"%Y-%m-%d");
	str1 = tWeekBegin.Format(L"%Y-%m-%d");
	str2 = tWeekEnd.Format(L"%Y-%m-%d");

	int f_num = tWeekBegin.GetDay();
	int t_num = t.GetDay();
	int l_num = tWeekEnd.GetDay();
	int num = t_num - f_num + 1;
	switch (num)
	{
	case 1:
		WeekDayT = _T("星期一");
		break;
	case 2:
		WeekDayT = _T("星期二");
		break;
	case 3:
		WeekDayT = _T("星期三");
		break;
	case 4:
		WeekDayT = _T("星期四");
		break;
	case 5:
		WeekDayT = _T("星期五");
		break;
	case 6:
		WeekDayT = _T("星期六");
		break;
	case 7:
		WeekDayT = _T("星期天");
		break;
	default:
		break;
	}
	return WeekDayT;
}





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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值