Задать вопрос
  • Непонятный формат Unix time - что это?

    @Socgrad Автор вопроса
    Нашёл ответ в документации программы. Если кому-то пригодится подобное вот:

    Формат хранения даты принятый в TeamWox - это 64 битный timestamp и соответствует типу INT64 в С++.

    Значение даты представляет количество 100-наносекундных интервалов начиная с 1 января 1601 года.

    В API Windows это значение соответствует структуре FILETIME и для работы с этой структорой используются такие функции API как FileTimeToSystemTime, GetSystemTimeAsFileTime и другие.

    Пример кода преобразования 64 битного таймстампа, который используется в TeamWox в клиентских скриптах JavaScript следующий:
    function TimeToInt64(utc)
    {
    utc = Math.ceil(utc/1000)+11644473600;
    return(utc + "0000000");
    }

    function TimeFromInt64(i64time)
    {
    if(typeof(i64time)=="string")
    {
    i64time=parseInt(i64time.substr(0,i64time.length-7));
    if(isNaN(i64time))
    return(null);
    }
    else
    i64time/=10000000;
    //---
    return new Date((i64time - 11644473600)*1000);
    }
    Ответ написан
    Комментировать