我想使用Swift 3将从数据库检索到的epoche time(number)转换为Date对象。
我有以下代码
// e.g. 1475616846.424875
user.birthday.timeIntervalSince1970
如何在Date对象中转换它?
答案 0 :(得分:3)
init(timeIntervalSince1970: TimeInterval)
返回相对于1970年1月1日00:00:00 UTC初始化的Date,给定的秒数。
只需使用Date
的初始化程序:
let epochTime: TimeInterval = 1475616846.424875
let date = Date(timeIntervalSince1970: epochTime)
print(date) //->2016-10-04 21:34:06 +0000
答案 1 :(得分:1)
SWIFT 3
此代码解决 swift 3的问题。
func epochToLocal(epochTime:Double)->String{
let timeResult:Double = epochTime
let date = NSDate(timeIntervalSince1970: timeResult)
let dateFormatter = DateFormatter()
dateFormatter.timeStyle = DateFormatter.Style.medium //Set time style
dateFormatter.dateStyle = DateFormatter.Style.medium //Set date style
let timeZone = TimeZone.autoupdatingCurrent.identifier as String
dateFormatter.timeZone = TimeZone(identifier: timeZone)
let localDate = dateFormatter.string(from: date as Date)
return "\(localDate)"
}