0

Такое преобразование может понадобиться, если вам необходимо передать данные из Delphi в какую нибудь другую программу, которая использует формат времени Unix(POSIX), например PHP. Ниже приведен код для такого преобразования:

const

BeginUnixDate: TDateTime = 25569;

SecondPerDay: Integer = 86400;

function DateTimeToUnixTime(_Value: TDateTime): Cardinal;

begin

if _Value < BeginUnixDate then

Exception.Create(‘Ошибка конвертирования’);

Result:= Round((_Value – BeginUnixDate) * SecondPerDay;

end;

Функция для обратного преобразования выглядит так:

function UnixTimeToDateTime(_Value: Cardinal): TDateTime;

begin

Result:= TDateTime((_Value / SecondPerDay) + BeginUnixDate);

end;

Ошибка конвертирования может возникнуть только случае, если дата меньше чем 1 января 1970 года.

Leave a Comment

You must be logged in to post a comment.

 

You need to log in to vote

The blog owner requires users to be logged in to be able to vote for this post.

Alternatively, if you do not have an account yet you can create one here.

Powered by Vote It Up