Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Интервал дат


Автор: Гость_lamer 23.8.2004, 11:34
sample.gif Господа Подскажите как найти интервал дат!!!!!!!!!! sample.gif Пользовался DaysBetween(dat1,dat2)
dat1 - системная дата
dat2 - дата создания файла

Если эти две даты принадлежат одному месяцу то все OK. Иначе полная чушь. Например Дата
Создания файла 20.04.2004

После DaysBetween вывожу дату создания файла. Результат 20.04.1900 Как это можно победить и добиться точной разницы между датой создания файла и системной датой






Автор: eldorado 23.8.2004, 11:49
Такое результат получился, потому что "нулевой" датой в Делфях считается 31.12.1899. Т.е. между двумя датами прошло столько же дней, сколько с 31.12.1899 до 20.04.1900. Попробуй взять целую часть от этого числа - это и будет количество дней.

Автор: gemoglobin 23.8.2004, 11:52
и еще
даты в делфях хранятся как double
поэтому разницу между двумя датами можно найти простым вичитанием

Автор: Гость_Lamer 23.8.2004, 12:09
Попробывал взять челую часть от разницы дат
Написал следующее
Deltam:=DaysBetween(Sdate,Fdate);
Deltam := Trunc(Deltam);
у файла дата 20.04.2004
Вывел дату файла после DaysBetween
Вот результат 20.04.1900

Автор: gemoglobin 23.8.2004, 13:43
разница будет целым числом - количество дней (не TDate)

Автор: eldorado 23.8.2004, 20:55
Насчёт взятия целого я попутал, у тебя же TDate, а не TDateTime. А разница Deltam, конечно же, должна быть не TDate, а целого типа.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)