纪元时间戳的UTC值不正确

问题描述 投票:1回答:1

我将生日存储为纪元时间戳。对于其他一切它工作正常,但对于生日在1968-08-06的人,纪元时间戳为-44323200000。当我尝试将此纪元时间戳转换回日期时,它会给我错误的结果(附上截图)。令人惊讶的是,生日是在1961-02-27(epoch timestamp -279072000000)的人,它完美地工作.source : epochconverter.com

date datetime epoch milliseconds
1个回答
1
投票

您正在使用Epoch & Unix Timestamp Conversion Tools。此站点会尝试猜测您输入的数字是否为自纪元以来的秒或毫秒,有时猜测不正确。

如果我输入-44323200(秒),我正确地得到“GMT:1968年8月6日星期二12:00:00 AM”。如果我输入-44323200000并打算将其视为毫秒,那么该网站仍然将其视为秒,并给我“格林尼治标准时间:星期六,6月15日,0565 12:00:00 AM”,1453年前。

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

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

© www.soinside.com 2019 - 2024. All rights reserved.