【发布时间】:2015-04-14 06:42:59
【问题描述】:
我有一个 Swift NSDate:
var date:NSDate()
并希望获得自 1970 年以来的毫秒数作为 Int32:
let time: Int32 = Int32(date.timeIntervalSince1970*1000)
let time: Int64 = Int64(date.timeIntervalSince1970*1000)
这是正确的做法吗?
【问题讨论】:
我有一个 Swift NSDate:
var date:NSDate()
并希望获得自 1970 年以来的毫秒数作为 Int32:
let time: Int32 = Int32(date.timeIntervalSince1970*1000)
let time: Int64 = Int64(date.timeIntervalSince1970*1000)
这是正确的做法吗?
【问题讨论】:
请不要使用 Int32。
Int32 的值最大为 2^31。那是毫秒,所以大约是 200 万秒。那还不到一个月。您的代码在 1970 年 2 月之前停止工作。
【讨论】:
假设你有
var date: NSDate()
然后你会使用:
let time = Int32(date.timeIntervalSince1970 * 1000)
(timeIntervalSince1970 是 NSDate 实例的属性。)
【讨论】: