• (转)COleDateTime 和 CTime


    Code
    CTime类

    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

    要想知道更多的时间格式,参见M F C文档中的strftime。

    使用COleDateTime类

    1) 获得一年中的某一天。

    COleDate Time datetime;

    datetime 
    = COleDateTime::GetCurrentTime();

    int DayOfYear = datetime.GetDayOfYear();

    2) 从文本串中读取时间。

    COleDate Time datetime;

    datetime.ParseDateTime(
    "12:12:23 27 January 93");

    说明。

    CTime和COleDateTime具有几乎同样的功能。然而COleDateTime允许用户获得一年中的某一天(创建Julian日期的一种好方法),以及分析一个时间文本串。

     与CTime相比, COleDateTime的优点在于它支持DWORD变量。COleDateTime使用的位数是双浮点的两倍,既然CTime只是简单地计算从1970年1月1日之后经过的秒数,

    所以到了2 
    0 3 7年它将达到4 2 9 4 9 6 7 2 9 5,从而不能再使用。相反, COleDateTime是一个浮点数,它表示是从1 9 0 0年1 2月3 0号之后的天数(小时是天的小数部分),几千年之内不会溢出。 

    CTime是无符号long类型,它的范围是0
    -4 2 9 4 9 6 7 2 9 5;

    COleDateTime是double类型,它占64位。
  • 相关阅读:
    关于DataGridView的数据源绑定字符串两个值得注意的问题
    .Net 第三方控件(转)
    sql语句linq语言lambda表达式对照
    InvokeRequired 属性 与Invoke方法
    .net垃圾回收机制
    const与readonly的区别
    Developer Express控件组合中的GridControl控件,如何自动显示每一行的序号
    XtraGrid控件6——2种GridColumn的属性
    如何让应用程序仅运行一个实例(c#)
    DevExpress控件之GridControl控件
  • 原文地址:https://www.cnblogs.com/fjchenqian/p/1398434.html
Copyright © 2020-2023  润新知