如何在Cocoa touch中使用NSDate或类似内容获取当月的当前天数?
答案 0 :(得分:161)
您可以使用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:
函数返回当前月份的天数。< / p>
days.length
将包含当月的天数。
如果您需要更多信息,请参阅NSDate
和NSCalendar
文档的链接。
答案 1 :(得分:5)
-[NSCalendar rangeOfUnit:inUnit:forDate:]
答案 2 :(得分:1)
Swift 3语法与Erez的回答有所改变:
let cal = Calendar(identifier: .gregorian)
let monthRange = cal.range(of: .day, in: .month, for: Date())!
let daysInMonth = monthRange.count