Подтвердить что ты не робот

Преобразовать временную метку в datetime в erlang

Как преобразовать временную метку (число миллисекунд с 1 января 1970 г.) в формат даты или даты в Erlang? Что-то вроде {год, месяц, день}.

4b9b3361

Ответ 1

Грубо:

msToDate(Milliseconds) ->
   BaseDate      = calendar:datetime_to_gregorian_seconds({{1970,1,1},{0,0,0}}),
   Seconds       = BaseDate + (Milliseconds div 1000),
   { Date,_Time} = calendar:gregorian_seconds_to_datetime(Seconds),
   Date.

Ответ 2

Так получилось, что для этой цели у меня есть github gist с кучей утилит datetime: http://gist.github.com/104903. Календарь имеет большую часть низкоуровневой сантехники для этого материала.