Swift实现简单时间戳转换
发布时间戳与当前时间比较:几秒前……天前。
- swift语法
- 时间戳转化
代码块
- createdTime:发布时间戳
//Swift时间戳转化方法
func timestamp() -> String {
var timestamp = String()
var now = time_t()
time(&now)
//createdTime发布时间戳
var distance = Int(difftime(now, createdTime))
if distance < 0 {
distance = 0
}
if distance < 60 {
timestamp = NSString(format: "%d%@", distance, (distance == 1) ? "秒前" : "秒前") as String
}
else if distance < 60 * 60 {
distance = distance / 60
timestamp = String(format: "%d%@", distance, (distance == 1) ? "分钟前" : "分钟前")
}
else if distance < 60 * 60 * 24 {
distance = distance / 60 / 60
timestamp = String(format: "%d%@", distance, (distance == 1) ? "小时前" : "小时前")
}
else if distance < 60 * 60 * 24 * 7 {
distance = distance / 60 / 60 / 24
timestamp = String(format: "%d%@", distance, (distance == 1) ? "天前" : "天前")
}
else if distance < 60 * 60 * 24 * 7 * 4 {
distance = distance / 60 / 60 / 24 / 7;
timestamp = String(format:"%d%@", distance, (distance == 1) ? "周前" : "周前")
}
else {
let dateFormatter = NSDateFormatter()
if dateFormatter == "" {
let dateFormatter = NSDateFormatter()
dateFormatter.timeStyle = .ShortStyle
dateFormatter.dateStyle = .ShortStyle
}
let date = NSDate(timeIntervalSince1970: createdTime)
timestamp = dateFormatter.stringFromDate(date)
}
return timestamp
}
- 欢迎大家一起学习进步^.^^.^