奇怪的事情发生在这里。以下代码:
String(Int(date.timeIntervalSince1970*1000))
在操场上工作,但不在课堂上。它与 EXC_BAD_INSTRUCTION 一起崩溃。
任何想法为什么?或者,我如何获得上述字符串NSTimeInterval
?
提前致谢!
编辑:例如,我需要结果为 Int,所以 1402324472549 而不是 1402324472549.64。
奇怪的事情发生在这里。以下代码:
String(Int(date.timeIntervalSince1970*1000))
在操场上工作,但不在课堂上。它与 EXC_BAD_INSTRUCTION 一起崩溃。
任何想法为什么?或者,我如何获得上述字符串NSTimeInterval
?
提前致谢!
编辑:例如,我需要结果为 Int,所以 1402324472549 而不是 1402324472549.64。
在类定义中:
var date = NSDate()
let myDateString = String(Int64(date.timeIntervalSince1970()*1000))
println("Seconds = \(myDateString)")
不确定根本原因,但它与类型转换有关。这有效:
var date = NSDate()
var asString = "\(Int(date.timeIntervalSince1970*1000))"
println(asString)
崩溃是因为您溢出了 32 位有符号整数,并且默认情况下 swift 会对所有操作进行边界检查。尝试:
"\(floor(date.timeIntervalSince1970)"