【问题标题】:Replacement for EncodeTime or DecodeTime in Delphi PrismDelphi Prism 中 EncodeTime 或 DecodeTime 的替换
【发布时间】:2011-08-29 19:58:02
【问题描述】:

在 Delphi Win32 中,您有 EncodeTime 和 DecodeTime 函数来操作 DateTime 数据或变量。 DELPHI Prism中是否有类似的功能?如果没有,你会怎么做?

例如,您想在 B 增加一天后将两个日期时间变量(A 和 B)加在一起。

谢谢,

【问题讨论】:

    标签: .net function datetime delphi-prism


    【解决方案1】:

    你必须使用DateTime 类型,这个类有很多构造函数,你可以用它们来编码一个日期时间。

    日期时间编码示例

    Var
      ADateTime : DateTime;
    begin
      //to enconde 29 August 2011
      ADateTime:=new DateTime(2011,8,29);
    
      //to enconde 29 August 2011 , 23:30 
      ADateTime:=new DateTime(2011,8,29,23,30,0);
    

    要解码 DateTime,您必须使用属性 Year、Month、Day、Minute 和 Second。

      var AYear : Integer:= ADateTime.Year;
      var AMonth : Integer:= ADateTime.Month;
      var ADay : Integer:= ADateTime.Day;
    

    现在要修改 Datetime 添加天数、年数或其他范围,您可以使用 AddYearsAddMonthsAddDays 等方法。

    //add a year to the date stored in the ADateTime variable
    Var NewDateTime: DateTime:=  ADateTime.AddYears(1);
    
    //substract a month to the date stored in the ADateTime variable
    Var NewDateTime: DateTime:=  ADateTime.AddMonths(-1);
    

    【讨论】:

    • @RRUZ,我认为你不能只使用时间变量(小时、分钟、秒、毫秒)。因此,您始终必须在时间中包含日期(年、月、日)。如果没有,只需日期。
    猜你喜欢
    • 2011-11-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-26
    相关资源
    最近更新 更多