zoukankan      html  css  js  c++  java
  • 获取当前系统时间(摘)

    from http://tech.sina.com.cn/soft/2000-09-27/775.html

    第一种方法是利用Time()函数获得当前系统时间,返回结果是TDateTime结构类型的变量。

    可以使用:TimeToStr将时间改为字符型。该函数不能用于返回“日期”。
      单独用于返回日期的系统函数是Date。
      那么有什么是既可返回正确的“时分秒”又可返回正确的“年月日”呢? 可以用Now函数,例如:

     

    var
      sTime:TDateTime;
      sday:TDatetime;
      mytime:TDateTime;
    begin
      sTime:
    =Time();
      sday:
    =Date ;
      mytime:
    =Now;
     
    // Caption:=DateToStr(sday)+' '+TimeToStr(sTime);  

      Caption:=DateToStr(mytime)+' '+TimeToStr(mytime);
    end;

    二是使用函数:DecodeDate(Date,wYear,wMonth,wDay);//wYear等为word类型

    三、使用API函数GetSystemTime

      用Now返回的日期格式中年只有2位,即2000年显示为00, 这似乎不太令人满意. 此外Now和Time都只能获得精确到秒的时间,为了得到更精确的毫秒级时间,可以使用API函数GetSystemTime,它对应的TSystemTime类型的定义为:
      TSystemTime = record
      wYear: Word;
       wMonth: Word;
      wDayOfWeek: Word;
      wDay: Word;
      wHour: Word;
      wMinute: Word;
      wSecond: Word;
      wMilliseconds: Word;
      end;
      显然,在程序逻辑中还能够方便地使用其结构成?时---各类时间值,因此使用函数GetSystemTime具有很大优越性。但该书中该函数的用法是错误的,通过查阅Windows SDK帮助可知,该函数原型为:
      VOID GetSystemTime(LPSYSTEMTIME lpst),参数指针lpst获取系统时间,因此可如以下程序段实现:
      procedure TForm1.Button3Click(Sender: TObject);
      var
      SysTime: TsystemTime;
      begin
      GetSystemTime(SysTime);
      Caption:=IntToStr(SysTime.wYear)+' '+IntToStr(SysTime.wMonth);
      //if SysTime.wYear>2000 then
      // ......在程序逻辑中利用获取的各类时间值
      end;
      综合以上讨论,获取当前系统时间利用函数GetSystemTime比较方便而且灵活。

  • 相关阅读:
    配置和兼容性测试的区别是什么?
    7 天内免登陆,测试要怎么去测试?
    在测试“支付网关”过程中的5个要点
    Hibernate入门与简谈
    jQuery专题
    Java反射机制专题
    Java IO流
    EL和JSTL专题
    泛型(Generic)
    Java异常处理
  • 原文地址:https://www.cnblogs.com/samsonleung/p/1277314.html
Copyright © 2011-2022 走看看