4

私には2つの日付があります:1。2013年2月1日2.今。したがって、2つの日付の間には2日の違いがあります。プログラムでこの日数の違いをデルファイで取得するにはどうすればよいですか?

4

2 に答える 2

10

DaysBetweenにある関数を使用しますDateUtils

var
  d1, d2: TDate;
begin

  d1 := EncodeDate(2013, 02, 01);
  d2 := EncodeDate(2013, 02, 04);

  ShowMessage(IntToStr(DaysBetween(d2, d1)));
于 2013-02-04T11:04:58.513 に答える
2

TDateTime浮動小数点形式で、整数部分は日数を表し、ゼシマル部分は時間を表します(24時間の小数として)。

したがって、今日から2日後の日付を取得する場合は、2元の日付に追加するだけです。2つの日付があり、距離を日数で計算する場合はDaysBetween、Andreasが提案するように使用します。

例:

var D:TDateTime;
begin
  D := EncodeDate(2013, 2, 1);
  D := D + 2; // Adds two days.
end;

IncDayfrom関数を使用DateUtilsして同じことを行うこともできます。読みやすいと言う人もいます。

D := IncDay(D, 2);
于 2013-02-04T11:07:14.680 に答える