精彩文章免费看

Swift - Date、时间戳、以及日期格式的转换(一)

时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数(一般情况下为10位数字符串)


1. 当前的时间戳字符串

static func getCurrentTimeStamp() ->String{

let nowDate =Date.init()

//10位数时间戳

let interval = Int(nowDate.timeIntervalSince1970)

//13位数时间戳 (13位数的情况比较少见)

// let interval = CLongLong(round(nowDate.timeIntervalSince1970*1000))

return "\(interval)"

2. 时间戳转换时间格式

static func getDateFormatString(timeStamp:String) ->String{

let interval:TimeInterval=TimeInterval.init(timeStamp)!

let date = Date(timeIntervalSince1970: interval)

let dateformatter =DateFormatter()

//自定义日期格式

dateformatter.dateFormat = "yyyy-MM-dd HH:mm:ss"

return dateformatter.string(from: date as Date)

3. 时间戳转换为Date类型

static func getDateFromTimeStamp(timeStamp:String) ->Date {

let interval:TimeInterval = TimeInterval.init(timeStamp)!

return Date(timeIntervalSince1970: interval)

4.时间格式转换为Date类型 (传入的字符串要与下方的格式一致!!!)

static func getDateFromTime(time:String) ->Date{

let dateformatter = DateFormatter()

//自定义日期格式

dateformatter.dateFormat="yyyy-MM-dd HH:mm:ss"

return dateformatter.date(from: time)!

关于时间差的计算参考

最后编辑于:2019-06-11 21:55