Я пытаюсь преобразовать строку unixtime в datetime, но это неверный результат. Я использую Delphi XE2 и использую функцию UnixToDateTime Dateutils для преобразования строки unixtime, но не повезло. Я также использовал другую функцию, которую я нашел в сети, и тот же результат. Ниже приведены необходимые данные:
Строковое значение Unixtime: 1552274340690
Результатом будет «51159-08-14 04:51:30», которое должно быть «11.03.2009, 11:19:00 AM». Я получил результат от онлайн-конвертера.
Ниже пример кода с использованием UnixToDateTime System.DateUtils:
var
nUnixTime : Int64;
begin
nUnixTime := StrtoInt64(sUnixTime); //sUnixTime = 1552274340690;
Result = UnixToDateTime(nUnixTime);
Ниже пример кода, который я нашел в сети:
const
UnixStartDate: TDateTime = 25569.0;
var
nUnixTime : Int64;
begin
nUnixTime := StrtoInt64(sUnixTime); //sUnixTime = 1552274340690;
Result := (nUnixTime / 86400) + UnixStartDate;
Пожалуйста, помогите, большое спасибо.