MFC中日期字符串的转换
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
MFC中⽇期字符串的转换⼀、将字符串2011-08-1800:00:00转换为字符串2011-8-18,通过以下的函数
CString DataDeleteZero(CString DATA)
{
CStringstrmonth,strday,stryear;
intyear=0,month=0,day=0;
year=atoi(DATA.Mid(0,4));
month=atoi(DATA.Mid(5,2));
day=atoi(DATA.Mid(8,2));
if(month<10)month=atoi(DATA.Mid(6,2));
if(day<10)day=atoi(DATA.Mid(9,2));
stryear.Format("%d",year);
strmonth.Format("%d",month);
strday.Format("%d",day);
DATA=stryear+"-"+strmonth+"-"+strday;
returnDATA;
}
⼆、MFC获得⽇期控件时间的cstring格式
变量定义:
CString strDate;
COleDateTime ole_time;
CTime c_time;
1、CString转换为COleDateTime
strDate = "2009-4-25 12:30:29";
ole_time.ParseDateTime(strDate);
2、COleDateTime转换为CString
strDate = ole_time.Format("%Y-%m-%d %H:%M:%S");
3、COleDateTime转换为CTime
SYSTEMTIME sys_time;
ole_time.GetAsSystemTime(sys_time);
c_time = CTime(sys_time);
4、CTime转换为COleDateTime
SYSTEMTIME sys_time;
c_time.GetAsSystemTime(sys_time);
ole_time = COleDateTime(sys_time);
5、CTime转换为CString
CTime Time;
Time.Format(“%Y-%m-%d”);
得到的是2011-08-18格式的字符串时间
Time.Format(“%y-%m-%d”);
得到的是11-08-18格式的字符串时间,年份和上⾯不⼀样了
Time.Format(“%Y-%#m-%#d”);
得到的是2011-8-18格式的字符串时间,可以把⽉份与⽇的“0”去掉
Time.Format("%Y-%m-%d %H:%M:%S");
得到的是2011-8-18 00:00:00格式的字符串时间。