СообЧа > База Знаний > Программирование > Delphi

Вопрос

Как преобразовать unix time в TDateTime?

Ответ

unix timestamp представляет собой число секунд начиная с 1.01.1970

const
    SecPerDay = 86400;
    Offset1970 = 25569;

function UnixTimeToDateTime(UnixTime : LongInt): TDate;
begin
    Result := DateTimeToStr(UnixTime / SecPerDay + Offset1970);
end;

function DateTimeToUnixTime(DelphiDate : TDate) : LongInt;
begin
    Result := Trunc((DelphiDate — Offset1970) * SecPerDay);
end;


Если необходима корректировка зимнего/летнего времени, то ее следует сделать самостоятельно.

Из конференции Delphi



Copyright © 2000-2004 Сообщество Чайников
Контактная информация