有关日期的年月日时分秒的比较

 一个有关日期比较的全能的方法,可以比较两个时间之间的相差的  年月日时分秒  。

NSYearCalendarUnit :年

NSMonthCalendarUnit :月

NSDayCalendarUnit :日

NSHourCalendarUnit :小时

NSMinuteCalendarUnit:分

NSSecondCalendarUnit:秒

下面这个例子是比较两个日期之间相差几个小时:

如果要比较两个日期之间相差的天数,直接吧标注的地方换成NSHourCalendarUnit即可,注意两个日期的格式要保持一致:例如两个日期都是“yyyyMMddHHmmss"

     NSCalendar *gregorian = [[NSCalendar alloc]initWithCalendarIdentifier:NSGregorianCalendar];

            [gregorian setFirstWeekday:2];

            NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];

            [dateFormatter setDateFormat:@"yyyyMMddHHmmss"];

            NSDate *fromDate;

            NSDate *toDate;

            [gregorian rangeOfUnit:NSHourCalendarUnit startDate:&fromDate interval:NULL forDate:[dateFormatter dateFromString:thisTime]];

            [gregorian rangeOfUnit:NSHourCalendarUnit startDate:&toDate interval:NULL forDate:[NSDate date]];

            NSDateComponents *dayComponents = [gregorian components:NSHourCalendarUnit fromDate:fromDate toDate:toDate options:0];

            

            if (dayComponents.hour >0 && dayComponents.hour>10) {

                //如果大于一小时之后。。。               

            }else{

            }

原文地址:https://www.cnblogs.com/wenqian/p/5999250.html