日期/时间例程-delphi编程

比较两个TDateTime值(返回“小于”、“等于”或“大于”)。如果两个值在同一天“下降”,则忽略时间部分。...

比较两个TDateTime值(返回“小于”、“等于”或“大于”)。如果两个值在同一天“下降”,则忽略时间部分。

man looking at computer screen

比较时间函数

比较两个TDateTime值(返回“小于”、“等于”或“大于”)。

声明:类型TValueRelationship=-1..1函数CompareDateTime(const ADate,BDate:TDateTime):TValueRelationship

描述:比较两个TDateTime值(返回“小于”、“等于”或“大于”)。

TValueRelationship表示两个值之间的关系。三个TValueRelationship值中的每一个都有一个“like”符号常量:-1[LessThanValue]第一个值小于第二个值。0[EqualValue]两个值相等。1[GreateThanValue]第一个值大于第二个值。比较结果:

如果ADate早于BDate,则小于value。如果ADate和BDate的日期和时间部分都相同,则等于value;如果ADate晚于BDate,则等于value。

例子:

var ThisMoment, FutureMoment : TDateTime; ThisMoment := Now; FutureMoment := IncDay(ThisMoment, 6); //adds 6 days //CompareDateTime(ThisMoment, FutureMoment) returns LessThanValue (-1) //CompareDateTime(FutureMoment, ThisMoment) returns GreaterThanValue (1)

比较时间函数

比较两个TDateTime值(返回“小于”、“等于”或“大于”)。如果两个值同时出现,则忽略日期部分。

声明:类型TValueRelationship=-1..1函数CompareDate(const ADate,BDate:TDateTime):TValueRelationship

描述:比较两个TDateTime值(返回“小于”、“等于”或“大于”)。如果两个值同时出现,则忽略时间部分。

TValueRelationship表示两个值之间的关系。三个TValueRelationship值中的每一个都有一个“like”符号常量:-1[LessThanValue]第一个值小于第二个值。0[EqualValue]两个值相等。1[GreateThanValue]第一个值大于第二个值。比较结果:

如果ADate发生在BDate指定的日期之前,则小于value。如果ADate和BDate的时间部分相同,则等于value,如果ADate发生在BDate指定的日期之后,则忽略日期部分。如果ADate发生在BDate指定的日期之后,则大于value。

例子:

var ThisMoment, AnotherMoment : TDateTime; ThisMoment := Now; AnotherMoment := IncHour(ThisMoment, 6); //adds 6 hours //CompareDate(ThisMoment, AnotherMoment) returns LessThanValue (-1) //CompareDate(AnotherMoment, ThisMoment) returns GreaterThanValue (1

日期函数

返回当前系统日期。

声明:类型TDateTime=type Double;

功能日期:TDateTime;

描述:返回当前系统日期。

TDateTime值的整数部分是自1899年12月30日以来经过的天数。TDateTime值的小数部分是已过去的24小时的小数部分。

要计算两个日期之间的天数,只需减去这两个值。同样,要将日期和时间值增加一定的小数天数,只需将小数添加到日期和时间值中即可。

示例:ShowMessage('今天是'+DateToStr(日期));

datetimetostr函数

将TDateTime值转换为字符串(日期和时间)。

声明:类型TDateTime=type Double;

函数DayOfWeek(日期:TDateTime):整数;

描述:返回给定日期的星期几。

DayOfWeek返回一个介于1和7之间的整数,其中周日是一周的第一天,周六是第七天。DayOfWeek不符合ISO 8601标准。

例子:

const Days: array[1..7] of string = ('Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday') ShowMessage('Today is ' + Days[DayOfWeek(Date)]); //Today is Monday

日间函数

给出两个指定日期之间的完整天数。

声明:函数DaysBetween(const ANow,AThen:TDateTime):整数;

描述:给出两个指定日期之间的天数。

函数只计算整天。这意味着它将返回0作为05/01/2003 23:59:59和05/01/2003 23:59:58之间的差异的结果,其中实际差异是一整天减去1秒。

例子:

var dtNow, dtBirth : TDateTime; DaysFromBirth : integer; dtNow := Now; dtBirth := EncodeDate(1973, 1, 29); DaysFromBirth := DaysBetween(dtNow, dtBirth); ShowMessage('Zarko Gajic "exists" ' + IntToStr(DaysFromBirth) + ' whole days!');

函数日期

通过将时间部分设置为0,仅返回TDateTime值的日期部分。

声明:函数DateOf(日期:TDateTime):TDateTime

描述:通过将时间部分设置为0,仅返回TDateTime值的日期部分。

DateOf将时间部分设置为0,即午夜。

例子:

var ThisMoment, ThisDay : TDateTime; ThisMoment := Now; // -> 06/27/2003 10:29:16:138 ThisDay := DateOf(ThisMoment); //This Day:= 06/27/2003 00:00:00:000

解码日期函数

将年、月和日值与TDateTime值分开。

声明:日期(日期:TDateTime;变量年、月、日:Word);;

描述:将年、月和日值与TDateTime值分开。

如果给定的TDateTime值小于或等于零,则年、月和日返回参数均设置为零。

例子:

var Y, M, D: Word; DecodeDate(Date, Y, M, D); if Y = 2000 then ShowMessage('You''re in a "wrong" century!);

EncodeDate函数根据年、月和日值创建TDateTime值。

声明:函数编码日期(年、月、日:Word):TDateTime

描述:根据年、月和日值创建TDateTime值。

年份必须介于1和9999之间。有效月份值为1到12。有效日期值为1到28、29、30或31,具体取决于月份值。如果函数失败,EncodeDate将引发EConvertError异常。

例子:

var Y, M, D: Word; dt: TDateTime; y:=2001; M:=2; D:=18; dt:=EncodeDate(Y,M,D); ShowMessage('Borna will be one year old on ' + DateToStr(dt))

FormatDateTime函数将TDateTime值格式化为字符串。

声明:函数FormatDateTime(const Fmt:string;Value:TDateTime):string;

描述:将TDateTime值格式化为字符串。

FormatDateTime使用Fmt参数指定的格式。有关支持的格式说明符,请参阅Delphi帮助文件。

例子:

var s: string; d: TDateTime; ... d:=Now; // today + current time s:=FormatDateTime('dddd',d); // s:=Wednesday s:=FormatDateTime('"Today is " dddd " minute " nn',d) // s:=Today is Wednesday minute 24

incday函数

从日期值中添加或减去给定的天数。

声明:函数IncDay(ADate:TDateTime;Days:Integer=1):TDateTime;

描述:从日期值中添加或减去给定的天数。

如果Days参数为负值,则返回的日期<ADate。日期参数指定的一天中的时间部分将复制到结果中。

例子:

var Date: TDateTime; EncodeDate(Date, 2003, 1, 29) //January 29, 2003 IncDay(Date, -1) //January 28, 2003

现在功能

返回当前系统日期和时间。

声明:类型TDateTime=type Double;

功能现在:TDateTime;

描述:返回当前系统日期和时间。

TDateTime值的整数部分是自1899年12月30日以来经过的天数。TDateTime值的小数部分是已过去的24小时的小数部分。

要计算两个日期之间的天数,只需减去这两个值。同样,要将日期和时间值增加一定的小数天数,只需将小数添加到日期和时间值中即可。

示例:ShowMessage('Now is'+DateTimeToStr(Now));

年间函数

给出两个指定日期之间的整年数。

声明:函数yearsbween(const SomeDate,AnotherDate:TDateTime):整数;

描述:给出两个指定日期之间的整年数。

YearsBetween根据每年365.25天的假设返回近似值。

例子:

var dtSome, dtAnother : TDateTime; DaysFromBirth : integer; dtSome := EncodeDate(2003, 1, 1); dtAnother := EncodeDate(2003, 12, 31); YearsBetween(dtSome, dtAnother) == 1 //non-leap year dtSome := EncodeDate(2000, 1, 1); dtAnother := EncodeDate(2000, 12, 31); YearsBetween(dtSome, dtAnother) == 0 // leap year

  • 发表于 2021-10-05 08:28
  • 阅读 ( 166 )
  • 分类:IT

你可能感兴趣的文章

铸造(cast)和转换(convert)的区别

...表现最好。请记住,Convert是特定于SQL server的,当涉及到日期和时间值、小数和货币符号的转换时,Convert会更加友好。另一方面,Cast更像是ANSI标准,可以比Convert更便于移植。这种类型的函数可以或多或少地用于其他数据库应用...

  • 发布于 2021-06-23 23:54
  • 阅读 ( 211 )

应用程序编程接口(api)和系统调用(system call)的区别

...管理系统调用–获取和设置系统数据,获取和设置时间和日期等。 通信系统调用–发送和接收消息、传输状态信息、创建和删除通信连接等。 应用程序编程接口(api)和系统调用(system call)的区别 定义 API是一组协议、例程和函数...

  • 发布于 2021-07-01 06:58
  • 阅读 ( 451 )

delphi编译器版本指令

...对于每一个新的Delphi版本来说,向语言中添加几个新的RTL例程是非常常见的(也是可取的)。 例如,Delphi 5中引入的IncludeTrailingBackslax函数在字符串的末尾添加“\”,如果该字符串还不存在。在Delphi MP3项目中,我使用了这个函...

  • 发布于 2021-09-06 15:09
  • 阅读 ( 164 )

了解delphi编程的基础知识

...程的Delphi代码文件。在此过程中,您应该探索Delphi的内置例程,以及如何使Delphi应用程序的所有单元协同工作。 DelphiIDE(代码编辑器)帮助您有效地从方法实现和方法声明中跳转,使用工具提示符号洞察功能定位变量声明,等...

  • 发布于 2021-09-06 15:13
  • 阅读 ( 185 )

理解delphi项目和单元源文件

...文件包含用于构建应用程序的目录。这通常是一组简单的例程,用于打开主窗体和设置为自动打开的任何其他窗体。然后,它通过调用全局应用程序对象的Initialize、CreateForm和Run方法来启动程序。 TApplication类型的全局变量应用...

  • 发布于 2021-09-06 15:15
  • 阅读 ( 175 )

程序退出时delphi中的内存泄漏通知

...误。。。看看马德普和尤里卡洛格 delphi提示导航器 日期时间SQL查询:在Delphi中格式化Access SQL的日期时间值 使用键盘快捷键强制TListView的编辑模式

  • 发布于 2021-09-06 15:15
  • 阅读 ( 168 )

德尔福单元剖析(德尔福初学者版)

...包含从项目中的其他单元调用的代码。当您开始构建有用例程的库时,您可能会将它们存储在代码单元中。要向Delphi应用程序添加新的代码单元,请选择文件新建。。。单位。 解剖 无论何时创建单元(表单或代码单元),Del...

  • 发布于 2021-09-10 20:53
  • 阅读 ( 181 )

如何用delphi显示最顶层的系统模式消息框(display a topmost system modal message box with delphi)

...和行为。此参数可以是各种标志的组合。 示例:系统日期/时间更改时的系统模式警告框 让我们来看一个创建系统模式顶层消息框的例子。当系统日期/时间更改时,您将处理发送到所有正在运行的应用程序的Windows消息,例如...

  • 发布于 2021-09-15 03:45
  • 阅读 ( 227 )

理解delphi中的内存分配

...方法动态分配的。 在Delphi程序中,堆栈内存由 局部例程(方法、过程、函数)变量。 例程参数和返回类型。 Windows API函数调用。 记录(这就是为什么不必显式创建记录类型的实例)。 您不必显式释放堆栈上的内存,因...

  • 发布于 2021-09-15 03:47
  • 阅读 ( 194 )

使用delphi性能计数器精确测量运行时间

...使用Now函数。现在,在SysUtils单元中定义,返回当前系统日期和时间。 几行代码测量某个进程的“开始”和“停止”之间经过的时间: Now函数返回当前系统日期和时间,精确到10毫秒(Windows NT及更高版本)或55毫秒(Windows 98...

  • 发布于 2021-09-15 03:49
  • 阅读 ( 184 )
chimidoro2211
chimidoro2211

0 篇文章

相关推荐