【ios】 日期单独对年、月、日做加减
1、当前时间减去18年
NSDate *currentDate = currentDate = [NSDate date];
NSCalendar *calendar = nil; if ([UIDevice currentDevice].systemVersion.doubleValue >= 8.0) { calendar = [NSCalendar calendarWithIdentifier:NSCalendarIdentifierGregorian]; } else { calendar = [NSCalendar currentCalendar]; } NSDateComponents *dateComponents = [calendar components:NSYearCalendarUnit fromDate:currentDate]; [dateComponents setYear:-18]; NSDate *newdate = [calendar dateByAddingComponents:dateComponents toDate:currentDate options:0];
2、当前时间减去18年4个月12天
NSDate *currentDate = currentDate = [NSDate date]; NSCalendar *calendar = nil; if ([UIDevice currentDevice].systemVersion.doubleValue >= 8.0) { calendar = [NSCalendar calendarWithIdentifier:NSCalendarIdentifierGregorian]; } else { calendar = [NSCalendar currentCalendar]; } NSDateComponents *dateComponents = [calendar components:NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit fromDate:currentDate]; [dateComponents setYear:-18]; [dateComponents setMonth:-4]; [dateComponents setDay:-12]; NSDate *newdate = [calendar dateByAddingComponents:dateComponents toDate:currentDate options:0];
3、当前时间加上18年4个月12天
NSDate *currentDate = currentDate = [NSDate date]; NSCalendar *calendar = nil; if ([UIDevice currentDevice].systemVersion.doubleValue >= 8.0) { calendar = [NSCalendar calendarWithIdentifier:NSCalendarIdentifierGregorian]; } else { calendar = [NSCalendar currentCalendar]; } NSDateComponents *dateComponents = [calendar components:NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit fromDate:currentDate]; [dateComponents setYear:18]; [dateComponents setMonth:4]; [dateComponents setDay:12]; NSDate *newdate = [calendar dateByAddingComponents:dateComponents toDate:currentDate options:0];