LoginSignup
4
5

More than 5 years have passed since last update.

swift2.0で2つの日付の差分を調べる

Posted at

例えば、2000/10/09と2000/11/09の差分を調べたい場合。

let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "yyyy/MM/dd"

let start = "2000/10/09"
let end = "2000/11/09"
let startDate:NSDate? = dateFormatter.dateFromString(start)
let endDate:NSDate? = dateFormatter.dateFromString(end)
let cal = NSCalendar.currentCalendar()
let calUnit:NSCalendarUnit = [.Day]
let components = cal.components(calUnit, fromDate: startDate!, toDate: endDate!, options: NSCalendarOptions())

print(components.day)

こうすると差分日数は「31」だとでてきます。

上の例は差分の日数のみ取得していますが、年や月まで知りたい時はNSCalendarUnitでその旨、指定してあげるといいです。
let calUnit:NSCalendarUnit = [.Year, .Month, .Day]
のように。

4
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
5