想把时间的精度精确到毫秒,但是delphi对于HH:MM:SS:ZZZ格式的不能用strtotime转化
这个怎么处理
 snow:=FormatDateTime('HH:MM:SS:ZZZ' ,Now);
if  (StrToTime(snow) >=StrToTime('10:10:20:111')) 
会报 'xx:xx:xx:xxx'不是有效的时间格式,
这个怎么处理,只能精度到秒吗,delphi

解决方案 »

  1.   

    procedure DecodeTime(const DateTime: TDateTime; var Hour, Min, Sec, MSec: Word);
    var
      MinCount, MSecCount: Word;
    begin
      DivMod(DateTimeToTimeStamp(DateTime).Time, SecsPerMin * MSecsPerSec, MinCount, MSecCount);
      DivMod(MinCount, MinsPerHour, Hour, Min);
      DivMod(MSecCount, MSecsPerSec, Sec, MSec);
    end;这个MSec应该就是你想要的
      

  2.   


    var
        lwHour, lwMin, lwSec, lwMsec: Word;
    begin
        DecodeTime(now, lwHour, lwMin, lwSec, lwMsec);
        ShowMessage(IntToStr(lwMsec));
    end;