文章类型: VC&C++
关键词: VC,C++,时间,COleDateTime类型,应用
内容摘要: COleDateTime类型的应用

VC++中时间类COleDateTime类型的应用

2016/10/17 15:28:20    来源:apple    阅读:

使用COleDateTime类
1) 获取当前时间。
      CTime time;
      time = CTime::GetCurrentTime();
2) 获取时间元素。
      int year = time.GetYear() ;
      int month = time.GetMonth();
      int day = time.GetDay();
      int hour = time.GetHour();
      int minute = time.GetMinute();
      int second = time.GetSecond();
      int DayOfWeek = time.GetDayOfWeek() ;
3) 获取时间间隔。
      CTimeSpan timespan(0,0,1,0); // days,hours,minutes,seconds
      timespan = CTime::GetCurrentTime() - time;
4) 把时间转换为字符串。
      CString sDate,sTime,sElapsed Time ;
      sDate = time.Format("%m/%d/%y"); //ex: 12/10/98
      sTime = time.Format("%H:%M:%S"); //ex: 9:12:02
      sElapsed Time = timespan.Format("%D:%H:%M:%S"); // %D is total elapsed days
5) 把字符串转换为时间。
         CString sDateTime;
         int nYear, nMonth, nDate, nHour, nMin, nSec;
         sscanf(sDateTime, "%d-%d-%d %d:%d:%d", &nYear, &nMonth, &nDate, &nHour, &nMin, &nSec);
         CTime sTime(nYear, nMonth, nDate, nHour, nMin, nSec); 
要想知道更多的时间格式,参见MFC文档中的strftime

使用COleDateTime类
1) 获得一年中的某一天。
      COleDateTime datetime;
      datetime = COleDateTime::GetCurrentTime();
      int DayOfYear = datetime.GetDayOfYear();
2) 从文本串中读取时间。
      COleDateTime datetime;
      datetime.ParseDateTime("12:12:23 27 January 93");
3) 获取时间间隔。
         //比方计算日期差
         COleDateTime begin_date(1970, 1, 1, 0, 0, 0);
         COleDateTime end_date(1990, 1, 1, 0, 0, 0);
         COleDateTimeSpan timeSpan;    //计算时间差
         timeSpan = end_date - begin_date; 
         long expi_date = timeSpan.GetDays();

说明
■ CTime和COleDateTime具有几乎同样的功能。然而,COleDateTime允许用户获得一年中的某一天(创建Julian日期的一种好方法),以及分析一个时间文本串。
■ 与CTime相比, COleDateTime的优点在于它支持DWORD变量。COleDateTime使用的位数是双浮点的两倍,既然CTime只是简单地计算从1970年1月1日之后经过的秒数,所以到了2037年它将达到4294967295,从而不能再使用。相反,COleDateTime是一个
浮点数,它表示是从1900年12月30号之后的天数(小时是天的小数部分),几千年之内不会溢出。

↑ 上一篇文章:UpdateData() 是MFC的窗口函数,用来刷新数据的 关键词:UpdateData(),是MFC的窗口函数,用来刷新数据的 发布日期:2016/10/17 15:27:02
↓ 下一篇文章:vc字符串转换处理:绝对精华,收集所有的例子 关键词:vc字符串转换处理:绝对精华,收集所有的例子 发布日期:2016/10/19 11:37:10
相关文章:
vc++文件目录的删除 关键词:vc++,VC,path,null,delete,api,c,C++ 发布日期:2017-08-30 13:41
vc++ string处理大全 关键词:vc++,处理,大全,string,date,float,语言,byte 发布日期:2016-09-22 14:22
VC++ MSXML创建XML文件以及对XML文档解析 关键词:VC++,MSXML创建XML文件以及对XML文档解析 发布日期:2016-08-23 09:41
相关目录:.NETVC&C++软件开发
我要评论
正在加载评论信息......