// 处理日期的格式

来源:互联网 发布:linux下jdk的卸载 编辑:程序博客网 时间:2024/05/14 16:51

class func changeDateTime(_ publish_time:Int) -> String {

        // 把秒转化成时间

        let publishTime =Date(timeIntervalSince1970:TimeInterval(publish_time))

        

        let dateFormatter =DateFormatter()

        dateFormatter.locale = Locale(localeIdentifier:"zh_CN")

        dateFormatter.setLocalizedDateFormatFromTemplate("yyyy-MM-dd HH:mm:ss")

        let delta =Date().timeIntervalSince(publishTime)

        

        if (delta <=0) {

            return"刚刚"

        }

        elseif (delta < 60) {

            return"\(Int(delta))秒前"

        }

        elseif (delta < 3600) {

            return"\(Int(delta /60))分钟前"

        }

            

    

        else {

            let calendar =Calendar.current

            // 现在

            let comp = (calendaras NSCalendar).components([NSCalendar.Unit.year,NSCalendar.Unit.month,NSCalendar.Unit.day,NSCalendar.Unit.hour,NSCalendar.Unit.minute,NSCalendar.Unit.second], from:Date())

            // 发布时间

            let comp2 = (calendaras NSCalendar).components([NSCalendar.Unit.year,NSCalendar.Unit.month,NSCalendar.Unit.day,NSCalendar.Unit.hour,NSCalendar.Unit.minute,NSCalendar.Unit.second], from: publishTime)

            

            if comp.year == comp2.year {

                if comp.day == comp2.day {

                    return"\(comp.hour - comp2.hour)小时前"

                } else {

                    return"\(comp2.month)-\(comp2.day)\(comp2.hour):\(comp2.minute)"

                }

            } else {

                return"\(comp2.year)-\(comp2.month)-\(comp2.day)\(comp2.hour):\(comp2.minute)"

            }

        }

    }



0 0