Swift ios 使用 unix 时间戳

Swift ios working with unix timestamp

我的 api return unix 时间戳 例如:1362873600

我想做的是将1362873600转换成format/remaining时间eg:

还剩 20 天 11 小时

在使用 unix 时间戳时是否有内置方法。或者是否有任何图书馆可以处理这个问题?

谢谢

你可以这样做: (可能有错别字我没法测试)

let formatter = NSDateComponentsFormatter()
formatter.unitsStyle = .Full
formatter.allowedUnits = NSCalendarUnit.CalendarUnitDay | NSCalendarUnit.CalendarUnitHour | NSCalendarUnit.CalendarUnitMinute | NSCalendarUnit.CalendarUnitSecond
let string = formatter.stringFromTimeInterval(1362873600)

for Swift 2.0 我相信您需要将 allowUnits 行更改为:

formatter.allowedUnits = NSCalendarUnit.Day | NSCalendarUnit.Hour | NSCalendarUnit.Minute | NSCalendarUnit.Second

您可以在此处阅读有关格式化程序的更多信息:http://nshipster.com/nsformatter/

首先,创建一个时间间隔自 1970 年以来的 NSDate - Unix 纪元日期。

let date = NSDate(timeIntervalSince1970: 1362873600)

然后您可以将该日期与现在进行比较以获取剩余时间。要将剩余时间值格式化为字符串,您可以使用 NSDateFormatter,根据您的需要,您可能需要创建自己的。