COleDateTime选件类

封装用于 OLE 自动化的 DATE 数据类型。

class COleDateTime

成员

38wh24td.collapse_all(zh-cn,VS.110).gif公共构造函数

名称

描述

COleDateTime::COleDateTime

构造 COleDateTime 对象。

38wh24td.collapse_all(zh-cn,VS.110).gif公共方法

名称

描述

COleDateTime::Format

生成 COleDateTime 对象的已格式化的字符串表示形式。

COleDateTime::GetAsDBTIMESTAMP

调用此方法获取在 COleDateTime 对象的时间作为 DBTIMESTAMP 数据结构。

COleDateTime::GetAsSystemTime

调用此方法获取在 COleDateTime 对象的时间作为 SYSTEMTIME 数据结构。

COleDateTime::GetAsUDATE

调用此方法获取在 COleDateTime 的时间作为 UDATE 数据结构。

COleDateTime::GetCurrentTime

创建表示当前时间的一 COleDateTime 对象 (静态成员函数)。

COleDateTime::GetDay

返回此 COleDateTime 对象表示的日 (1 – 31)。

COleDateTime::GetDayOfWeek

返回此 COleDateTime 对象表示的周 (sunday = 1)。

COleDateTime::GetDayOfYear

返回此 COleDateTime 对象表示中的日 (一月 1 日= 1)。

COleDateTime::GetHour

返回此 COleDateTime 对象表示的小时 (0 – 23)。

COleDateTime::GetMinute

返回此 COleDateTime 对象表示的分钟 (0 – 59)。

COleDateTime::GetMonth

返回此 COleDateTime 对象表示的月份 (1 – 12)。

COleDateTime::GetSecond

返回第二此 COleDateTime 对象表示 (0 – 59)。

COleDateTime::GetStatus

获取 COleDateTime 对象的状态 (有效性) 。

COleDateTime::GetYear

返回此 COleDateTime 对象表示的年份。

COleDateTime::ParseDateTime

从字符串中读取一个日期/时间值并将 COleDateTime的值。

COleDateTime::SetDate

将此 COleDateTime 对象的值设置为指定的日期值的。

COleDateTime::SetDateTime

将此 COleDateTime 对象的值设置为指定的日期/时间值的。

COleDateTime::SetStatus

设置此 COleDateTime 对象的状态 (有效性)。

COleDateTime::SetTime

将此 COleDateTime 对象的值设置为指定的时间的值。

38wh24td.collapse_all(zh-cn,VS.110).gif公共运算符

名称

描述

COleDateTime::operator ==、COleDateTime::operator <等.

比较两个 COleDateTime 值。

COleDateTime::operator +,COleDateTime::operator -

增加和减少 COleDateTime 值。

COleDateTime::operator +=,COleDateTime::operator - =

从此 COleDateTime 对象增加和减少 COleDateTime 值。

COleDateTime::operator =

将一个 COleDateTime 值。

COleDateTime::operator 日期,COleDateTime::operator Date*

转换 COleDateTime 值转换为 DATEDATE*

38wh24td.collapse_all(zh-cn,VS.110).gif公共数据成员

名称

描述

COleDateTime::m_dt

包含此 COleDateTime 对象的基础 DATE

COleDateTime::m_status

包含此 COleDateTime 对象的状态。

备注

COleDateTime 没有基类。

它是一个 OLE 自动化的 VARIANT 数据类型的类型。 COleDateTime 值表示绝对日期和时间值。

DATE 类型实现为浮点值。 天数从 1899 年十二月 30 日) 测量,在午夜。 下表显示了的日期及其关联的值:

日期

1899 年十二月 29 日午夜,

-1.0

1899 年十二月 29 日,6 AM

-1.25

1899 年十二月 30 日午夜,

0.0

1899 年十二月 31 日午夜,

1.0

1900 年一月 1 日,6 AM..

2.25

警告

说明在该控件上的表中,虽然日值变为负数在 1899 年十二月 30 日的午夜之前,时间值不。例如,凌晨 6:00 由一部分 0.25 的值始终表示无论表示日的该整数是否为正 (在 1899 年十二月 30 日之后) 或负值 (在 1899 年十二月 30 日之前)。这意味着一个简单的浮点比较比个代表的凌晨 7:00 将不正确排序表示在 12/29/1899 的 COleDateTime 凌晨 6:00,因为 later 当天。

COleDateTime 选件类处理通过十二月 31 日日期 100 年一月 1 日,9999。 COleDateTime 选件类使用公历,它不支持朱利安日期。 COleDateTime 忽略夏时制。 (请参见 日期和时间:自动化支持。)

备注

可以使用 %y 格式检索一个仅中开始在 1900 年的日期。如果在 1900 年前用于日期的 %y 格式,代码生成一个断言失败。

此类型还用于表示日期或时间值。 按照约定,日期 0 (1899 年十二月 30 日)。时间值和时间 00:00 (午夜) 为日期值。

如果您创建一 COleDateTime 对象使用日期小于 100,日期接受,但是,对的后续调用 GetYearGetMonthGetDayGetHourGetMinuteGetSecond 失败并返回-1。 过去,您可以使用两位数日期,但是,日期必须为 100 或用在 MFC 4.2 和更高版本。

为了避免问题,请指定一个四位日期。 例如:

COleDateTime mytime(1996, 1, 1, 0, 0, 0); 

COleDateTime 值的基本算术运算使用该选件类 COleDateTimeSpanCOleDateTimeSpan 值定义时间间隔。 这些选件类之间的关系类似于 CTimeCTimeSpan之间。

有关 COleDateTimeCOleDateTimeSpan 选件类的更多信息,请参见中的文章 日期和时间:自动化支持

要求

**标头:**ATLComTime.h

请参见

参考

COleVariant选件类

CTime选件类

CTimeSpan选件类

层次结构图

其他资源

ATL/MFC共享选件类