我想确定iOS中当前日期的日期,月份和年份。我在网上搜索后发现了这个:
NSDate *date = [NSDate date];
NSCalendar *calendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSDateComponents *components = [calendar components:(NSDayCalendarUnit) fromDate:date];
NSInteger Day = [components day];
NSInteger month = [components month];
NSInteger year = [components year];
此代码显示当天正确,但年份和月份未显示。它显示了一些数字,如2147483647.我找不到解决方案,所以请帮我纠正我找到的代码,或者写一些新的代码来完成我需要的工作。
答案 0 :(得分:13)
这一行是问题所在:
NSDateComponents *components = [calendar components:(NSDayCalendarUnit) fromDate:date];
应该是
NSDateComponents *components = [calendar components:(NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit) fromDate:date];