程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> .NET實例教程 >> 計算兩個日期的間隔,可精確到秒

計算兩個日期的間隔,可精確到秒

編輯:.NET實例教程

function LeaveDateTimeStr(const fromDate, ToDate: TDateTime): string;
var
  Days, H, M, S: Int64;
begin
  Result := '''';
  if fromDate = ToDate then
  begin
    Result := ''已到期'';
  end
  else
  begin
    Days := ABS(DaysBetween(fromDate, ToDate));
    H := ABS(HoursBetween(fromDate, ToDate));
    M := ABS(MinutesBetween(fromDate, ToDate));
    S := ABS(SecondsBetween(fromDate, ToDate));

    if H >= HoursPerDay then
    begin
      H := H mod HoursPerDay;
    end;

    if M >= MinsPerHour then
    begin
      M := M mod MinsPerHour;
    end;

    if S >= SecsPerMin then
    begin
      S := S mod SecsPerMin;
    end;

    if Days <> 0 then Result := Format(''%d天'', [Days]);
    if H <> 0 then Result := Format(''%s%d小時'', [Result, H]);
    if M <> 0 then Result := Format(''%s%d分'', [Result, M]);
    if S <> 0 then Result := Format(''%s%d秒'', [Result, S]);

    if ToDate < fromDate then
      Result := Format(''已過期%s'', [Result]);
  end;
end; 

這個函數可以計算出fromDate和ToDate之間間隔,可以精確到小時、分和秒。

使用這個函數需要引用單元DateUtils。

 

使用這個函數:

FDate := StrtoDateTime(''2008-08-08 20:00:00'');

Str := LeaveDateTimeStr(Now(), FDate);

Label1.Caption := str;

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved