erlang datetime to erlang now

Identificador: 11817
Autor: Ricardo Bocchi   segunda-feira, Dia 1 de maio de 2023, às 03:01:01 horas
Revisado Por:    quinta-feira, Dia 1 de novembro de 2018, às 21:18:52 horas
Visualização: Todos

Pontos: 0   Acessos: 4614



Function to convert erlang datetime to erlang now(), used to mochijson2.


datetime_to_now(DateTime) ->
  BaseDate = calendar:datetime_to_gregorian_seconds({{1970,1,1},{0,0,0}}) * 1000000,
  MicroSeconds = calendar:datetime_to_gregorian_seconds(DateTime) * 1000000,
ErlangSystemTime = MicroSeconds - BaseDate,
MegaSecs = ErlangSystemTime div 1000000000000, 
Secs = ErlangSystemTime div 1000000 - MegaSecs * 1000000,
MicroSecs = ErlangSystemTime rem 1000000,
{MegaSecs, Secs, MicroSecs}.