1.
//将数据库时间和当前时间相比,得出时间差. + (NSString *)dateDescriptionWithDate:(NSDate *)date{ // NSCalendar日历类,提供了非常丰富的日期转换函数 //1. 取出当前的日期 NSCalendar *currentCalendar = [NSCalendar currentCalendar]; //2. 用当前日期currentCalendar和传入的date比较,判断是否是今天 if ([currentCalendar isDateInToday:date]) { NSLog(@"今天") ; } //3. 判断是否是昨天 if ([currentCalendar isDateInYesterday:date]){ NSLog(@"昨天") ; } /* 取出日期的时间组件方法.有年份/月份/日/时/分/秒/星期等等. NSCalendarUnit 是一个枚举.里面列举了日期的时间组件. - (NSInteger)component:(NSCalendarUnit)unit fromDate:(NSDate *)date NS_AVAILABLE(10_9, 8_0); */ //4. 返回传入的日期是几几年. NSInteger yearData = [currentCalendar component:NSCalendarUnitYear fromDate:date]; NSLog(@"年份:%ld",yearData); //5.比较函数,返回完整的自然年数. 当期日期和传入日期比较,如果时间间隔<1年,返回0. 0年<时间间隔<2年,返回1 .... NSDateComponents *dateComponents = [currentCalendar components:NSCalendarUnitYear fromDate:date toDate:[NSDate date]options:(NSCalendarWrapComponents)]; NSLog(@"相差%ld年",dateComponents.year); return @"其他"; }