【问题标题】:How to convert Unix Epoch Timestamp to Erlang timestamp format?如何将 Unix Epoch Timestamp 转换为 Erlang 时间戳格式?
【发布时间】:2018-03-06 09:46:49
【问题描述】:

我正在尝试向我的 ejabberd mod_muc_room 添加一些额外的功能,但 jlib:now_to_utc_string 似乎不接受 Unix 时间戳,并要求它们采用 Erlang 的内置格式。尝试使用“1519633372486003”而不是“{1519,633372,486003}”会使mod_muc_room 崩溃。

我找到了至少几种将 Erlang 时间戳转换为 Unix 时间戳的方法,但我找不到进行反向转换的方法。

在将数字连接在一起并将它们转换回数字之前,有没有一种方法可以在不将整数转换为二进制和二进制转换为元组的情况下做到这一点?

【问题讨论】:

    标签: erlang unix-timestamp datetime-conversion


    【解决方案1】:

    您可以使用divrem 来提取三个值:

    1> M = 1000000.
    1000000
    2> T = 1519633372486003.
    1519633372486003
    3> {T div M div M, T div M rem M, T rem M}.
    {1519,633372,486003}
    

    【讨论】:

    • @Shrenostal 如果此答案解决了您的问题,您可以通过单击侧面的复选标记“接受”它。这给你和回答者都加分了:)
    猜你喜欢
    • 2015-08-19
    • 2016-02-21
    • 2020-12-12
    • 2017-02-13
    • 2014-10-26
    • 2015-09-08
    • 2021-07-02
    • 1970-01-01
    • 2019-04-16
    相关资源
    最近更新 更多