在一般項目中通常用的最多的狀況就是獲取日期並格式化。
一、只須要小時、分鐘、秒數時我的以爲使用如下代碼app
let dateFormater = NSDateFormatter()
dateFormater.dateFormat = "HH:mm:ss"
let time = dateFormater.stringFromDate(currentDate)
二、還須要獲得年月日的時候,使用如下代碼(由於第一種方式獲取的月份爲英文)component
let currentDate = NSDate()
let calendar = NSCalendar.currentCalendar()
let dateComponents = calendar.components([NSCalendarUnit.Year, NSCalendarUnit.Month, NSCalendarUnit.Day, NSCalendarUnit.Hour, NSCalendarUnit.Minute, NSCalendarUnit.Second], fromDate: currentDate)
print(dateComponents.year)
print(dateComponents.month)
print(dateComponents.day)
print(dateComponents.hour)
print(dateComponents.minute)
print(dateComponents.second)
三、將字符串轉化爲日期orm
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
var dateAsString = "2015-10-08 14:25:37"
let date1 = dateFormatter.dateFromString(dateAsString)
四、比較日期間隔時間(此功能常用)字符串
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
var dateAsString = "2015-10-08 14:25:37"
let date1 = dateFormatter.dateFromString(dateAsString)!get
dateAsString = "2018-03-05 08:14:19"
let date2 = dateFormatter.dateFromString(dateAsString)!string
var diffDateComponents = NSCalendar.currentCalendar().components([NSCalendarUnit.Year, NSCalendarUnit.Month, NSCalendarUnit.Day, NSCalendarUnit.Hour, NSCalendarUnit.Minute, NSCalendarUnit.Second], fromDate: date1, toDate: date2, options: NSCalendarOptions.init(rawValue: 0))it
print("The difference between dates is: (diffDateComponents.year) years, (diffDateComponents.month) months, (diffDateComponents.day) days, (diffDateComponents.hour) hours, (diffDateComponents.minute) minutes, (diffDateComponents.second) seconds")io