|
//
// DateExt.swift
// PaiaiDataKit
//
// Created by FFIB on 2017/9/24.
// Copyright © 2017年 FFIB. All rights reserved.
//
import Foundation
extension String {
public func convertTimeStringToDate(format: String) -> Date? {
var time = tm()
strptime(self, format, &time)
time.tm_isdst = -1
let date = mktime(&time)
return Date(timeIntervalSince1970: TimeInterval(date) + TimeInterval(TimeZone.current.secondsFromGMT()))
}
}
extension Date {
public func getTimeString(format: String) -> String {
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = format
return dateFormatter.string(from: self)
}
public func getTimeInfoFromDate() -> String {
let dateNow = Date()
let time = dateNow.timeIntervalSince(self) - 28800
var retTime: TimeInterval = 1.0
if time < 3600 {
retTime = time / 60
var retTimeInt = Int(retTime)
retTimeInt = retTimeInt <= 0 ? 1 : retTimeInt
return "\(retTimeInt)分钟前"
} else if time < (3600 * 24) {
retTime = time / 3600
var retTimeInt = Int(retTime)
retTimeInt = retTimeInt <= 0 ? 1 : retTimeInt
return "\(retTimeInt)小时前"
} else if time < 3600 * 24 * 7 {
retTime = time / (3600 * 24)
var retTimeInt = Int(retTime)
retTimeInt = retTimeInt <= 0 ? 1 : retTimeInt
return "\(retTimeInt)天前"
} else if time < 3600 * 24 * 30 {
retTime = time / (3600 * 24 * 7)
var retTimeInt = Int(retTime)
retTimeInt = retTimeInt <= 0 ? 1 : retTimeInt
return "\(retTimeInt)周前"
} else if time < 3600 * 24 * 7 * 365 {
retTime = time / (3600 * 24 * 7 * 30)
var retTimeInt = Int(retTime)
retTimeInt = retTimeInt <= 0 ? 1 : retTimeInt
return "\(retTimeInt)月前"
} else {
retTime = time / (3600 * 24 * 7 * 365)
var retTimeInt = Int(retTime)
retTimeInt = retTimeInt <= 0 ? 1 : retTimeInt
return "\(retTimeInt)年前"
}
}
}
|