時間戳是指格林威治時間1970年01月01日00時00分00秒(北京時間1970年01月01日08時00分00秒)起至現在的總秒數。
獲取現在的時間戳(秒)
func getNowDataString() -> String {
// 當前的時間 例如 "May 31, 2017, 10:43 AM"
let date:NSDate = NSDate()
// 把時間轉換成時間戳 例如 1496198622.22576,想要毫秒的話直接time * 1000就可以了
let time: TimeInterval = date.timeIntervalSince1970
return String(format: "%.0f", time)
}
根據時間戳 和 指定的時間格式來返回時間 (秒)
func yearsMonthDay(time: NSNumber, format: String) -> String {
// yyyy-MM-dd HH:mm:ss
//轉換為時間
let timeInterval:TimeInterval = TimeInterval(Int(time))
let date = Date(timeIntervalSince1970: timeInterval)
//格式話輸出
let dformatter = DateFormatter()
dformatter.dateFormat = format
return dformatter.string(from: date)
}
時間戳轉換時間 (秒)
func dateFrom(time: String, format: String) -> String {
//格式話輸出
let dfmatter = DateFormatter()
dfmatter.dateFormat = format
let date = dfmatter.date(from: time)
let dateStamp:TimeInterval = date!.timeIntervalSince1970
let dateSt:Int = Int(dateStamp)
return String(dateSt)
}
時間格式
G: 公元時代,例如AD公元
yy: 年的后2位
yyyy: 完整年
MM: 月,顯示為1-12,帶前置0
MMM: 月,顯示為英文月份簡寫,如 Jan
MMMM: 月,顯示為英文月份全稱,如 Janualy
dd: 日,2位數表示,如02
d: 日,1-2位顯示,如2,無前置0
EEE: 簡寫星期幾,如Sun
EEEE: 全寫星期幾,如Sunday
aa: 上下午,AM/PM
H: 時,24小時制,0-23
HH: 時,24小時制,帶前置0
h: 時,12小時制,無前置0
hh: 時,12小時制,帶前置0
m: 分,1-2位
mm: 分,2位,帶前置0
s: 秒,1-2位
ss: 秒,2位,帶前置0
S: 毫秒
Z: GMT(時區)