COleDateTime tempTime;
COleDateTimeSpan tempSpan(7, 0, 0, 0);
COleDateTime timeBegin;timeBegin.ParseDateTime("2010-07-10");
tempTime = timeBegin + tempSpan;我想得到的是tempTime这个时间,不使用MFC..
COleDateTimeSpan tempSpan(7, 0, 0, 0);
COleDateTime timeBegin;timeBegin.ParseDateTime("2010-07-10");
tempTime = timeBegin + tempSpan;我想得到的是tempTime这个时间,不使用MFC..
解决方案 »
- 关于edit控件的一个小问题
- COM中如何创建窗口?
- 在ComboBox中显示数据库中的某一字段的值,数据库是DAO,最好提供代码,万分感谢!!!
- 入門級的問題-- 如何更改文件的後綴名?
- 关于位段定义的问题
- 在制作模拟时钟时,怎样将表盘当作位图,在指针被刷新时,而表盘不用刷新?
- 随时接收网络广播问题??
- 关于菜单,100分不要了!拿去。
- 请问有没有关于excel文件格式的中文资料?或者有别的方法让我把我的数据输出成这种格式的文件也可以
- 我使用什么样的API(最好不要IP HELPER)获得并设置本机的IP?
- 将DSHOW代码封装到DLL里一定要使用ATL?
- 求教用VC实现活动目录备份(数据库)的编程
#include <afxdisp.h>/********************************************************************
* Function: SubTime
* Description: 计算两个日期天数之差
* Input: CString strStart [开始时间,如2010-05-28]
* CString strEnd [结束时间,如2010-06-28]
* Output: None
* Return: CString [天数差]
* Others: None
*********************************************************************/
CString SubTime(CString strStart,CString strEnd)
{
CString strDates = "0";
if(strStart.IsEmpty() || strEnd.IsEmpty())
{
return strDates;
}
COleVariant vtime1(strStart);
COleVariant vtime2(strEnd);
vtime1.ChangeType(VT_DATE);
vtime2.ChangeType(VT_DATE);
COleDateTime timeS = vtime1;
COleDateTime timeE = vtime2;
SYSTEMTIME stS,stE;
VariantTimeToSystemTime(timeS,&stS);
VariantTimeToSystemTime(timeE,&stE);
CTime tmS(stS);
CTime tmE(stE);
CTimeSpan span = tmE-tmS;
strDates.Format("%d",span.GetDays());
return strDates;
}
/********************************************************************
* Function: AddTime
* Description: 计算某日期,若干天后的日期
* Input: CString strStart [开始时间,如2010-05-28]
* int nDays [天数]
* Output: None
* Return: CString [nDays天后的日期]
* Others: None
*********************************************************************/
CString AddDates(CString strDate,int nDays)
{
CString strTemp = "";
if(strDate.IsEmpty())
{
return strTemp;
}
COleVariant vtime(strDate);
vtime.ChangeType(VT_DATE);
COleDateTime time = vtime;
SYSTEMTIME st;
VariantTimeToSystemTime(time,&st);
CTime tm1(st);
CTime tm2(tm1.GetYear(),tm1.GetMonth(),tm1.GetDay() + nDays,0,0,0);
strTemp.Format("%04d-%02d-%02d",tm2.GetYear(),tm2.GetMonth(),tm2.GetDay());
return strTemp;
}void main()
{
MessageBox(NULL,SubTime("2010-02-01","2010-03-01"),NULL,NULL);
MessageBox(NULL,AddDates("2010-02-25",10),NULL,NULL);
}