【Objective-C】获取当前月份有多少天以及获取日期各个组成部分

603 阅读1分钟

获取当前月份有多少天

NSCalendar *calendar = [NSCalendarcurrentCalendar];
NSRange range = [calendarrangeOfUnit:NSDayCalendarUnitinUnit:NSMonthCalendarUnitforDate:[NSDatedate]];
NSUInteger numberOfDaysInMonth = range.length;

numberOfDaysInMonth 即为当月的天数。 更多用法查看NSCalendarNSDateComponents帮助文档。

获取当前年份和月份和天数

NSCalendar *calendar = [NSCalendar currentCalendar];
unsigned unitFlags = NSYearCalendarUnit | NSMonthCalendarUnit |  NSDayCalendarUnit;
NSDateComponents *components = [calendar components:unitFlags fromDate:[NSDate date]];
NSInteger iCurYear = [components year];  //当前的年份
NSInteger iCurMonth = [components month];  //当前的月份
NSInteger iCurDay = [components day];  // 当前的号数