使用 Swift 呈现 Unix 时间戳
presenting Unix Timestamps with Swift
使用当前时间戳和给定时间戳,在页面上显示它们的最佳方式是什么?如果给定的时间戳代表 "yesterday",演示文稿应该说昨天。如果给定的时间戳是几分钟或几小时前,它应该只包括多少。等等,最好从另一个中减去一个并评估差异意味着什么,或者是否有可以使用的内置库或框架?到目前为止,我正在使用以下游乐场:
let ts = 1499299978.149724
let current_ts: Double
let date = NSDate(timeIntervalSince1970: ts)
let dayTimePeriodFormatter = DateFormatter()
let totalFormat = "MMM dd YYYY hh:mm a" //just for reference
dayTimePeriodFormatter.dateFormat = "hh:mm a" //add to this as desired
let dateString = dayTimePeriodFormatter.string(from: date as Date)
这应该让你开始:
let midnight = startOfToday.timeIntervalSince1970
let secondsInADay = 86400.0
if ts > midnight {
print ("today")
code
} else if ts > midnight - secondsInADay {
print ("yesterday")
code
} else if ts > midnight - secondsInADay - secondsInADay {
print ("2 days ago")
code
} else if ts > midnight - secondsInADay * 3 {
print ("3 days ago")
code
}
在 "today" 块内,您可以使用类似的过程来检查秒前、分钟前,否则从当前 ts 中减去 ts,然后相应地除以 60 得到您需要的数字
使用当前时间戳和给定时间戳,在页面上显示它们的最佳方式是什么?如果给定的时间戳代表 "yesterday",演示文稿应该说昨天。如果给定的时间戳是几分钟或几小时前,它应该只包括多少。等等,最好从另一个中减去一个并评估差异意味着什么,或者是否有可以使用的内置库或框架?到目前为止,我正在使用以下游乐场:
let ts = 1499299978.149724
let current_ts: Double
let date = NSDate(timeIntervalSince1970: ts)
let dayTimePeriodFormatter = DateFormatter()
let totalFormat = "MMM dd YYYY hh:mm a" //just for reference
dayTimePeriodFormatter.dateFormat = "hh:mm a" //add to this as desired
let dateString = dayTimePeriodFormatter.string(from: date as Date)
这应该让你开始:
let midnight = startOfToday.timeIntervalSince1970
let secondsInADay = 86400.0
if ts > midnight {
print ("today")
code
} else if ts > midnight - secondsInADay {
print ("yesterday")
code
} else if ts > midnight - secondsInADay - secondsInADay {
print ("2 days ago")
code
} else if ts > midnight - secondsInADay * 3 {
print ("3 days ago")
code
}
在 "today" 块内,您可以使用类似的过程来检查秒前、分钟前,否则从当前 ts 中减去 ts,然后相应地除以 60 得到您需要的数字