- (NSString *)intervalSinceNow: (NSString *) theDate { NSString *timeString=@""; NSDateFormatter *format=[[NSDateFormatter alloc] init]; [format setDateFormat:@"yyyy-MM-dd HH:mm:ss"]; NSDate *fromdate=[format dateFromString:theDate]; NSTimeZone *fromzone = [NSTimeZone systemTimeZone]; NSInteger frominterval = [fromzone secondsFromGMTForDate: fromdate]; NSDate *fromDate = [fromdate dateByAddingTimeInterval: frominterval]; //获取当前时间 NSDate *adate = [NSDate date]; NSTimeZone *zone = [NSTimeZone systemTimeZone]; NSInteger interval = [zone secondsFromGMTForDate: adate]; NSDate *localeDate = [adate dateByAddingTimeInterval: interval]; double intervalTime = [fromDate timeIntervalSinceReferenceDate] - [localeDate timeIntervalSinceReferenceDate]; long lTime = fabs((long)intervalTime); NSInteger iSeconds = lTime % 60; NSInteger iMinutes = (lTime / 60) % 60; NSInteger iHours = fabs(lTime/3600); NSInteger iDays = lTime/60/60/24; NSInteger iMonth =lTime/60/60/24/12; NSInteger iYears = lTime/60/60/24/384; NSLog(@"相差%d年%d月 或者 %d日%d时%d分%d秒", iYears,iMonth,iDays,iHours,iMinutes,iSeconds); if (iHours<1 && iMinutes>0) { timeString=[NSString stringWithFormat:@"%d分",iMinutes]; }else if (iHours>0&&iDays<1 && iMinutes>0) { timeString=[NSString stringWithFormat:@"%d时%d分",iHours,iMinutes]; } else if (iHours>0&&iDays<1) { timeString=[NSString stringWithFormat:@"%d时",iHours]; }else if (iDays>0 && iHours>0) { timeString=[NSString stringWithFormat:@"%d天%d时",iDays,iHours]; } else if (iDays>0) { timeString=[NSString stringWithFormat:@"%d天",iDays]; } return timeString; }