如何在Cocoa中提取当前月份的数量? 这就是我这样做但它返回的东西像309420938420422 .. 谢谢!
-(int)getNumberOfCurrentDay:(NSDate*)date_
{
NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSDateComponents *comps = [gregorian components:NSMonthCalendarUnit fromDate:date_];
NSInteger numberday = [comps day];
NSLog(@"Number of the day %i", numberday);
return numberday;
}
答案 0 :(得分:3)
您需要使用: NSDayCalendarUnit
-(int)getNumberOfCurrentDay:(NSDate*)date_
{
NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSDateComponents *comps = [gregorian components:NSDayCalendarUnit fromDate:date_];
NSInteger numberday = [comps day];
NSLog(@"Number of the day %d", numberday);
return numberday;
}
答案 1 :(得分:1)
尝试使用NSDayCalendarUnit
代替NSMonthCalendarUnit
。或者执行以下操作以获得更多(天,月,年,小时,分钟,秒等):
int comp = NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit;
NSDateComponents *theDateComponents = [gregorian components:comp fromDate:date_];
int day = [theDateComponents day];
希望有所帮助