【问题标题】:Incorrect UTC value for epoch timestamp纪元时间戳的 UTC 值不正确
【发布时间】:2019-02-16 03:02:40
【问题描述】:

我将生日存储为纪元时间戳。对于其他一切,它都可以正常工作,但对于生日在 1968 年 8 月 6 日的人来说,纪元时间戳为 -44323200000。当我尝试将此纪元时间戳转换回日期时,它给了我错误的结果(附截图)。令人惊讶的是,对于生日在 1961-02-27(纪元时间戳 -279072000000)的人来说,它可以完美运行。

【问题讨论】:

    标签: date datetime epoch milliseconds


    【解决方案1】:

    您正在使用Epoch & Unix Timestamp Conversion Tools。本网站尝试猜测您输入的数字是自纪元以来的秒数还是毫秒数,有时会猜错。

    如果我输入 -44323200(秒),我会正确得到“GMT:1968 年 8 月 6 日星期二 12:00:00 AM”。如果我输入 -44323200000 并打算将其设为毫秒,则该站点仍将其视为秒并给我“GMT:星期六,6 月 15 日,0565 年 12:00:00 AM”,1453 年前。

    我还没有找到一种方法来指示输入的数字是秒还是毫秒。还有其他在线纪元时间转换器。例如,current millis 始终假定为毫秒。当我输入 -44323200000 时,我得到 Tue Aug 06 1968 00:00:00。

    也就是说,在我看来,使用毫秒值来记录生日似乎过于精确。如果是我,我会考虑 ISO 8601 格式字符串中的日期,例如 1968-08-06。或者如果它需要是一个数字,那么 days 自纪元以来,而不是毫秒。例如 -513 表示 1968-08-06。 Convert days and seconds since 1970 etc.可以翻译。

    【讨论】:

      猜你喜欢
      • 2019-04-19
      • 1970-01-01
      • 1970-01-01
      • 2019-07-20
      • 2023-03-27
      • 1970-01-01
      • 2015-12-19
      • 1970-01-01
      • 2013-01-28
      相关资源
      最近更新 更多