【问题标题】:Unix Epoch time to Date returns strange results [duplicate]Unix Epoch 时间到日期返回奇怪的结果 [重复]
【发布时间】:2018-05-11 01:40:57
【问题描述】:
let postDate = Date(timeIntervalSince1970: feeds[indexPath.row].creationDate)
print("UNIX TIME: \(feeds[indexPath.row].creationDate)")
print("DATE: \(postDate)")

第一个打印命令是打印

UNIX 时间:1511530358000.0, UNIX时间:1511418618000.0, UNIX 时间:1511002194000.0

第二个打印命令正在打印

日期:49868-06-28 07:53:20 +0000, 日期:49864-12-13 01:00:00 +0000, 日期:49851-10-03 07:40:00

为什么我得到错误的日期结果?当我在 website 中测试相同的 unix 时间戳时,它给了我正确的答案。我正在使用 xcode 9.1 9B55

【问题讨论】:

    标签: swift timestamp unix-timestamp epoch


    【解决方案1】:

    您的creationDate 以毫秒为单位,而不是秒。你需要除以 1000。

    let postDate = Date(timeIntervalSince1970: feeds[indexPath.row].creationDate / 1000)
    

    【讨论】:

    • 天啊,我真傻。从上午 10 点到晚上 10 点编码让我的大脑停止运作。谢谢rmaddy。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-06-03
    • 2012-05-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-08
    • 2012-12-09
    相关资源
    最近更新 更多