zoukankan      html  css  js  c++  java
  • TDateTime 的相关用法

        年纪大了真的记忆力越来越差,这段时间现在开始摸 XE2了,昨天在项目组中看到编译顺序,今天再想看看在那里就是找不到了!看来想到的东西还是要记录下来!

      TDateTime 是 Delphi里常用的类,负责时间的存储,他与C#里面的是有区别的(用了一段时间的C#,回国头来,Delphi有点不习惯了,呵呵),基础类型是Double,其取值范围是 从 12/30/1899开始,比如6:00 AM 12/29/1899就是 -1.25  整数部分就是天,小数部分表示一天的几分之。

    1秒钟就是 1/(60*60*24)

    1分钟就是 1/(60*24)

    1小时就是 1/24

        真如大家所想到的,一分钟,一小时,一秒 已经是delphi提供的Const了。

    常用的函数包括:
    now(),date(),time()
    year(),
    DateTimetoStr(),FormatDateTime()
    replaceDate(),replaceTime()
    isLeapYear(),
    EncodeDateTime(),EncodeTime(),EncodeDate()
    strToDateTime()
    其实知道TDateTime本质,问题就很好解决了,用以上函数仅仅为了方便。
    比如:
    求出前一天
      1. now()-1;
      2. IncDay(now(),-1);
      3. YesterDay(now());
    如果是两个时间的组合比如用两个DateTimePick,一个的类型是时间,一个类型是日期。那么如何合成一个有效的时间呢?
      1. replaceDate(DateTimePick1.dateTime,DateTimePick2.dateTime));
      2. EncodeDateTime();
      3. Int(DateTimePick1.dateTime)+(DateTimePick2.dateTime-trunc(DateTimePick2.dateTime));
      4. Int(DateTimePick1.dateTime)+Frac(DateTimePick2.dateTime);

    求出前30分钟

      1. now()-30*(1/60/24)
      2. IncMinute(now(),-30)
  • 相关阅读:
    安卓自己定义View进阶-Canvas之绘制基本形状
    IOS UIPickView+sqlite 选择中国全部城市案例
    linux的主分区与逻辑分区的关系
    Qt:解析命令行
    Firefox默认英文修改中文
    autofs自动挂载
    telent对端口检测状态分析
    WinRAR5.4
    Centos6.5入侵清理
    Win10激活KMS
  • 原文地址:https://www.cnblogs.com/hieroly/p/2358261.html
Copyright © 2011-2022 走看看