定义:DateTimeToFileDate(DateTime: TDateTime): Integer;
作用: 将一个TDateTime类型的时间转化为Dos环境中的时间,Dos环境下对时间的访问
方法和VCL中的TdateTime类型不一样,在进行文件操作时,为了保持时间的一致性,需
要使用DateTimeToFileDate函数进行转化,返回的Integer的值就是Dos下的用于描述时
间的值。
DateTimeToSystemTime 过程:
定义:procedure DateTimeToSystemTime(DateTime: TDateTime; var SystemTime: TS
ystemTime);
作用:将一个TDateTime类型的时间转换为Win API函数所使用的TSystemTime类型,在使
用WinApi函数操纵时间时用到。
SystemTimeToDateTime 函数:
定义:function SystemTimeToDateTime(const SystemTime: TSystemTime): TDateTim
e;
作用:将一个在WinApi函数中得到的TSysTemTime类型的数转换为TDateTime类型。
DateTimeToTimeStamp 函数:
TimeStampToDateTime 函数:
定义:DateTimeToTimeStamp(DateTime: TDateTime): TTimeStamp;
作用:用于在TDataTime类型与TTimeStamp之间进行互相转换。TDataTime 用一个doubl
e描绘一个时间,而TTimeStamp则是采用两个整形数分别描述时间。两种类型的区别可参
考文章开始处的数据类型描述部分。
EncodeDate 函数:
定义:function EncodeDate(Year, Month, Day: Word): TDateTime;
作用: 输入年(year),月(month),日(day)的值,将该日期返回为TDateTime类型,年
的范围为1-9999,月份的范围为1-12,日期的范围视当月的情况而定,如果输入的值超出
范围,则将产生一个EConvertError错误。
DecodeDate 过程:
定义:procedure DecodeDate(Date: TDateTime; var Year, Month, Day: Word);
作用:输入一个TDateTime类型的日期,将其转为年(Year),月(Month),日(Day)的值。
如果输入值为0或小于0,则年月日均为0,
EncodeTime 函数:
定义:EncodeTime(Hour, Min, Sec, MSec: Word): TDateTime;
作用:输入小时(Hour),分(min),秒(Sec),微秒(MSec)的值,返回一个TDateTime类型的
时间,该值为一个介于0至1之间的小数。Hour的取值范围为0-23,Min的取值范围为0-59
,Sec的取值范围为0-59,MSec的取值范围为0-999,如果输入值超出范围,则产生一个EC
onvertError 错误。
DecodeTime 过程:
定义:procedure DecodeTime(Time: TDateTime; var Hour, Min, Sec, MSec: Word);
作用:输入一个时间,将其转换为小时(Hour),分(min),秒(Sec),微秒(MSec)的值。
TDateTime类型与字符串型转换函数:
DateTimeToStr 函数:
DateToStr 函数
TimeToStr函数
定义:function DateTimeToStr(DateTime: TDateTime): string;
function TimeToStr(Time: TDateTime): string;
作用:将一个TDateTime类型的数转换成字符串,DateTimeToStr转换日期和时间,Date
ToStr只转换日期,TimeToStr只转换时间。转换后的输出效果为YYYY-M-D H:M:S
StrToDateTime函数
StrToDate函数
StrToTime函数
定义:function StrToDateTime(const S: string): TDateTime;
作用:将带有日期时间格式的字符串转化成TDateTime,其中S必须是一个有效的字符串
,如
中设置的分隔字符进行分隔,其格式要求符合在Windows区域设定中的设定,其中HH,MM(
小时,分钟)必须添加,SS(秒)可选,也可以在后面加入 Am和Pm区分上下午,这时候
系统将认为采用12小时表示法,否则认为采用24小时表示法。
字串构成,如果在字符串中只有2个数,则认为是指定了月份和日期,年份采用当前年份
,
1932-2031年,则起始年份为32年,如果这个起始年份为0,则认为两位年份表示的都是
本世纪,如果其实年份大于0 ,则采用当前年份减去起始年份的值,这个值称为基准值
,大于等于这个值则认为事本世纪,否则认为是下世纪,下面给出几个例子说明:
DateTimeToString 过程:
FormatDateTime 函数:
定义:procedure DateTimeToString(var Result: string; const Format: string; D
ateTime: TDateTime);
tring;
作用:通过定义Format字串中的格式得到要输出时间字符串,例如要输出“今天是2002
年5月5日,星期五”就可以用这两种方法,这两个方法的作用相同,只是一个是通过共
享变量取得输出字符串,值在Result中,一个是通过返回值取得输出字符串,DateTime
参数是希望输出的日期值,Format由格式标志与附加字符串组合而成。附加字串用””
圈起,就像C中的Printf函数.如“今天是2002年5月5日,星期五”的Format值就是 ‘”
今天是”yyyy”年”mm”月”dd”日,” dddd’,yyyy,mm,dd,dddd都是格式标识,各
种格式标识的解释如下:
-Sun,如果是中文版,则显示同dddd。
SumDay,如果是中文版,则显示星期一~星期日
为一月~十二月
hh