如何使用 NSDate 或 Cocoa touch 中的类似内容获取当前月份的当前天数?
问问题
27311 次
4 回答
167
您可以使用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
将包含当月的天数。
以下是文档的链接,NSDate
如果NSCalendar
您想了解更多信息。
于 2009-07-24T20:29:50.423 回答
11
斯威夫特语法:
let date = NSDate()
let cal = NSCalendar(calendarIdentifier:NSCalendarIdentifierGregorian)!
let days = cal.rangeOfUnit(.CalendarUnitDay, inUnit: .CalendarUnitMonth, forDate: date)
于 2015-04-29T23:48:38.943 回答
6
Swift 3 的语法与 Erez 的回答有所不同:
let cal = Calendar(identifier: .gregorian)
let monthRange = cal.range(of: .day, in: .month, for: Date())!
let daysInMonth = monthRange.count
于 2017-03-16T18:41:31.377 回答
5
-[NSCalendar rangeOfUnit:inUnit:forDate:]
于 2009-07-24T20:26:28.793 回答