Swift - Date、时间戳、以及日期格式的转换(一)
https://www.jianshu.com/p/6a972dfd5906
时间戳是指格林威治时间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: dateasDate)
}
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)!
}