iOS开发—Swift时间戳转换方法

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
}
  • 欢迎大家一起学习进步^.^^.^
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值