与时间相关的代码 -时间戳


//MARK: - 时间相关
extension ToolManager{
    
    ///将时间秒转换成00:00格式的字符串
    static func transformTime(time:CGFloat)->String{
        
        //获取分
        let minute = Int(time) / 60
        var minutestr = ""
        if minute<10 {
            
            minutestr = "0\(minute)"
        }else{
            
            minutestr = "\(minute)"
        }
        //获取秒
        let second = Int(time)%60
        var secondstr = ""
        if second < 10 {
            
            secondstr = "0\(second)"
        }else{
            
            secondstr = "\(second)"
        }
        
        return "\(minutestr):\(secondstr)"
    }
    
    ///计算指定时间戳对应的时间到当前时间的时间差
    static func getTimeDifference(time:NSTimeInterval)->String{
        //将时间戳转换成时间
        let date = NSDate.init(timeIntervalSince1970:time)
        //算指定时间到当前时间之间的差值(单位:秒)(将时间转换成时间戳)
        let currentDifference = date.timeIntervalSinceNow
        
        //将时间差转换成天/时/分
        let currentDifference2 = -currentDifference
        
        //天
        let day = currentDifference2/60/60/24
        if day >= 1 {
            
            //约束小数点后只有0位
            let dayStr = String(format: "%.0f",day)
            return "\(dayStr)天前"
        }
        
        //时
        let hour = currentDifference2/60/60
        if hour >= 1{
            let hourStr = String(format: "%.0f",hour)
            return "\(hourStr)小时前"
        }
        
        //分
        let minute = currentDifference2/60
        if minute >= 1 {
            let minuteStr = String(format: "%.0f",minute)
            return "\(minuteStr)分钟前"
        }
        
        //秒
        let currentStr = String(format: "%.0f",currentDifference2)
        return "\(currentStr)秒前"
    }
}

你可能感兴趣的:(与时间相关的代码 -时间戳)