Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.25;
Скачать: [xml.tar.bz2];




Вниз

Даты!!! 


DenKop   (2002-04-12 21:50) [0]

Замучала вот такая задача.
Ищу разность между двумя датами так

function DifDate(Date1,Date2:String):TDateTime;
begin
Result:=StrToDate(Date2)-StrToDate(Date1);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
ShowMessage(DateToStr(DifDate("01.01.01","01.01.01")));
end;


Но в случае когда обе даты равны выдает следующее: 30.12.99
Когда Date2 больше Date1 на один день получаю: 31.12.99
........................ на один месяц получаю: 30.01.00
........................ на один год получаю: 30.12.00
Короче когда что больше чего-то на один день(год,месяц) или они равны, то получается бред какой-то. Возможно это связано с тем, что летоисчисление в TDateTime начинается с 30.12.1899. По моим соображениям оно должно начинаться с 31.12.1899. Как это дело обойти не нашёл, хотя времени уже убил теуву кучу.
Уважаемые, разъясните мне пожалуйста как обойти эту ситуацию?



Anatoly Podgoretsky   (2002-04-12 21:56) [1]

Разность между датами не является датой




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.25;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.029 c
4-81108           Vladimir Bolotin      2002-01-10 20:33  2002.04.25  
прозрачность в win2k


14-81059          limon                 2002-03-20 10:59  2002.04.25  
Юбилей: компьютерной мышке 50 лет


4-81102           Mr.Mike               2002-02-19 19:26  2002.04.25  
глючит GetUserName


4-81110           SerVS - S             2002-02-18 20:01  2002.04.25  
Подскажите плз как вырубить Ctrl+Alt+Del


6-81029           Aleksandr             2002-02-13 13:45  2002.04.25  
Как работать с TNMStrm на подтверждение чего-либо?