主页C++ Builder 资料C++ Builder 参考手册System 日期和时间TDateTime
C++ Builder 串口控件
C++ Builder 编程技巧
C++ Builder 操作指南
C++ Builder 参考手册
基础知识
cfloat 浮点数
cmath 数学函数
cstdlib 标准库函数
System 字符串
System 日期和时间
 • TDate
 • TTime
 • TDateTime
 • TDateTimeBase
 • Now
 • UnixToDateTime
 • DateTimeToUnix
 • DateTimeToStr
 • DateToStr
 • DecodeDate
 • DecodeTime
 • DecodeDateTime
 • FormatDateTime
 • StrToDate
 • StrToDateDef
 • StrToDateTime
 • StrToDateTimeDef
 • StrToTime
 • StrToTimeDef
 • TimeToStr
System.Math.hpp 数学函数
其他数据类型
VCL 基础类
VCL 应用程序
Pictures 图片
Graphics 绘图
Additional 控件
System 控件
A ~ Z 字母顺序排列的目录
网友留言/技术支持
TDateTime - 日期时间类型

TDateTime 是日期时间类型,范围为 0001年01月01日 00:00:00.000 到 9999年12月31日 23:59:59.999

 

头文件:

#include <System.hpp>

 

TDateTime 数据成员:

数据 类型 描述
public:    
TDateTimeBase::   TDateTimeBase 继承过来的
Val double 用来储存日期时间类型的数值。
这个数值等于从 1899年12月30日 00:00:00 开始,到这个时刻的天数,1 等于 1天,0.5 等于 12 个小时……

 

TDateTime 方法:

方法 描述
public:  
TDateTime __fastcall TDateTime() {Val = 0;}
__fastcall TDateTime(const TDateTimeBase& src) {Val = src.Val;}
__fastcall TDateTime(const double src) {Val = src;}
__fastcall TDateTime(const int src) {Val = src;}
__fastcall TDateTime(unsigned short year, unsigned short month, unsigned short day);
__fastcall TDateTime(unsigned short hour, unsigned short min, unsigned short sec, unsigned short msec);
__fastcall TDateTime(unsigned short year, unsigned short month, unsigned short day, unsigned short hour, unsigned short min, unsigned short sec, unsigned short msec);
enum TDateTimeFlag {Date, Time, DateTime};
__fastcall TDateTime(const System::String& src, TDateTimeFlag flag = DateTime);
构造函数
参数:
Val: double 类型的 Val 是从 1899年12月30日 00:00:00 开始,到这个时刻的天数,1 等于 1天,0.5 等于 12 个小时……
year: 年,范围 1 ~ 9999
month: 月,范围 1 ~ 12
day: 日,范围 1 ~ 28/29/30/31 必须符合平年/闰年/大月/小月的规则,不能超限
hour: 时,范围 0 ~ 23
min: 分,范围 0 ~ 59
sec: 秒,范围 0 ~ 59
msec: 毫秒,范围 0 ~ 999
CurrentDate static TDateTime __fastcall CurrentDate();
返回当前日期,例如:TDateTime t1 = TDateTime::CurrentDate();
CurrentTime static TDateTime __fastcall CurrentTime();
返回当前时间,例如:TDateTime t2 = TDateTime::CurrentTime();
CurrentDateTime static TDateTime __fastcall CurrentDateTime();
返回当前日期时间,例如:TDateTime t3 = TDateTime::CurrentDateTime();
FileDateToDateTime static TDateTime __fastcall FileDateToDateTime(int fileDate);
把 FileGetDate 函数返回的日期时间转为 TDateTime 类型的日期时间。
operator = TDateTime& __fastcall operator =(const TDateTimeBase& rhs) {Val = rhs.Val;return *this;}
TDateTime& __fastcall operator =(const TDateTime& rhs) {Val = rhs.Val; return *this;}
TDateTime& __fastcall operator =(const double rhs) {Val = rhs; return *this;}
TDateTime& __fastcall operator =(const int rhs) {Val = rhs; return *this;}
赋值操作符,可以把日期时间、浮点数、整数赋值给 TDateTime。
参数:如果是浮点数,或者整数值,是从 1899年12月30日 00:00:00 开始,到这个时刻的天数,1 等于 1天,0.5 等于 12 个小时……
operator += TDateTime& __fastcall operator +=(const TDateTimeBase& rhs) {Val+=rhs.Val;return *this;}
TDateTime& __fastcall operator +=(const TDateTime& rhs) {Val += rhs.Val; return *this;}
TDateTime& __fastcall operator +=(const double rhs) {Val += rhs; return *this;}
TDateTime& __fastcall operator +=(const int rhs) {Val += rhs; return *this;}
把参数的数值加在当前的 TDateTime 数值里面,数值按照天数计算,1 等于 1天,0.5 等于 12 个小时……
operator -= TDateTime& __fastcall operator -=(const TDateTimeBase& rhs) {Val-=rhs.Val;return *this;}
TDateTime& __fastcall operator -=(const TDateTime& rhs) {Val -= rhs.Val; return *this;}
TDateTime& __fastcall operator -=(const double rhs) {Val -= rhs; return *this;}
TDateTime& __fastcall operator -=(const int rhs) {Val -= rhs; return *this;}
把 TDateTime 里面的数值减去参数的数值,数值按照天数计算,1 等于 1 天,0.5 等于 12 个小时……
operator ++ TDateTime& operator ++() {Val++; return *this;}
TDateTime operator ++(int) {TDateTime tmp(*this); Val++; return tmp;}
加 1 操作符,1 相当于 1 天。
operator -- TDateTime& operator --() {Val--; return *this;}
TDateTime operator --(int) {TDateTime tmp(*this); Val--; return tmp;}
减 1 操作符,1 相当于 1 天。
operator + TDateTime __fastcall operator +(const TDateTimeBase& rhs) const {return Val+rhs.Val;}
TDateTime __fastcall operator +(const TDateTime& rhs) const {return Val+rhs.Val;}
TDateTime __fastcall operator +(const double rhs) const {return Val+rhs;}
TDateTime __fastcall operator +(const int rhs) const {return Val+rhs;}
返回 TDateTime 当前数值和参数相加的结果,数值按照天数计算。
operator - TDateTime __fastcall operator -(const TDateTimeBase& rhs) const {return Val-rhs.Val;}
TDateTime __fastcall operator -(const TDateTime& rhs) const {return Val-rhs.Val;}
TDateTime __fastcall operator -(const double rhs) const {return Val-rhs;}
TDateTime __fastcall operator -(const int rhs) const {return Val-rhs;}
返回 TDateTime 当前数值和参数相减的结果,数值按照天数计算。
operator == bool __fastcall operator ==(const TDateTime& rhs) const {return Val == rhs.Val;}
判断两个日期相等。
operator != bool __fastcall operator !=(const TDateTime& rhs) const {return Val != rhs.Val;}
判断两个日期不等。
operator > bool __fastcall operator >(const TDateTime& rhs) const {return Val > rhs.Val;}
判断大于。
operator < bool __fastcall operator <(const TDateTime& rhs) const {return Val < rhs.Val;}
判断小于。
operator >= bool __fastcall operator >=(const TDateTime& rhs) const {return Val >= rhs.Val;}
判断大于等于。
operator <= bool __fastcall operator <=(const TDateTime& rhs) const {return Val <= rhs.Val;}
判断小于等于。
operator String() __fastcall operator System::String() const;
类型转换操作符,转为字符串类型,使用 FormatSettings 指定的格式。
operator double() __fastcall operator double() const {return Val;}
类型转换操作符,转为 double 类型,等于从 1899年12月30日 00:00:00 开始,到这个时刻的天数,1 等于 1天,0.5 等于 12 个小时……
operator int() __fastcall operator int() const {return (int)Val;}
类型转换操作符,转为 int 类型,等于从 1899年12月30日 00:00:00 开始,到这个时刻的天数,1 等于 1天,……
FormatString System::String __fastcall FormatString(const System::String& format) const;
按照参数 format 给定的格式转为字符串,例如 s = t.FormatString(L"yyyy'年'mm'月'dd'日' hh:nn:ss");
参数 format 指定日期时间的格式,请参考 FormatDateTime 函数的参数说明。
DateString System::String __fastcall DateString() const;
转为日期字符串,使用 FormatSettings 指定的格式。
TimeString System::String __fastcall TimeString() const;
转为时间字符串,使用 FormatSettings 指定的格式。
DateTimeString System::String __fastcall DateTimeString() const;
转为日期时间字符串,使用 FormatSettings 指定的格式。
DayOfWeek int __fastcall DayOfWeek() const;
返回 TDateTime 的星期值,范围:1 ~ 7,是符合美国习惯的星期,1:星期日,2:星期一,……,7:星期六。
如果需要 ISO 8601 国际标准的星期,需要用 DayOfTheWeek 函数,1:星期一,2:星期二,……,7:星期日。
例如:dow = t.DayOfWeek(); 或 dow = DayOfTheWeek(t); 将返回不同标准的星期值,ISO 8601 符合中国习惯。
FileDate int __fastcall FileDate() const;
返回用于 FileSetDate 函数的文件日期时间。
DecodeDate void __fastcall DecodeDate(unsigned short* year, unsigned short* month, unsigned short* day) const;
从 TDateTime 里面提取出年、月、日。
DecodeTime void __fastcall DecodeTime(unsigned short* hour, unsigned short* min, unsigned short* sec, unsigned short* msec) const;
从 TDateTime 里面提取出时、分、秒、毫秒。
◤上一页:TTime下一页:TDateTimeBase

C++ 爱好者 -- Victor Chen 的个人网站 www.cppfans.com 辽ICP备11016859号