如何使用NSDate或Cocoa touch中的类似方法获取当月的当前天数?
Answers:
您可以使用NSDate
和NSCalendar
类:
NSDate *today = [NSDate date]; //Get a date object for today's date
NSCalendar *c = [NSCalendar currentCalendar];
NSRange days = [c rangeOfUnit:NSDayCalendarUnit
inUnit:NSMonthCalendarUnit
forDate:today];
today
是NSDate
表示当前日期的对象;这可以用来计算当月的天数。NSCalendar
然后实例化一个对象,该对象可与NSDate
当前日期的结合使用,以使用该rangeOfUnit:inUnit:forDate:
函数返回当月的天数。
days.length
将包含当月的天数。
这里是链接到Google文档NSDate
和NSCalendar
如果您想了解更多信息。
date
在Xcode中对其进行测试时调用了它。
Swift语法:
let date = NSDate()
let cal = NSCalendar(calendarIdentifier:NSCalendarIdentifierGregorian)!
let days = cal.rangeOfUnit(.CalendarUnitDay, inUnit: .CalendarUnitMonth, forDate: date)
Swift 3语法与Erez的答案有所不同:
let cal = Calendar(identifier: .gregorian)
let monthRange = cal.range(of: .day, in: .month, for: Date())!
let daysInMonth = monthRange.count