时间的各种操作

由NSDate转换为NSString:

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

[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];

NSString*strDate = [dateFormatter stringFromDate:[NSDate date]];

由NSString转换为NSDate:

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

[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];

NSDate *date =[dateFormatter dateFromString:@"2010-08-04 16:01:03"];

比较2个时间段的间隔

NSCalendar *cal = [NSCalendar currentCalendar];

unsigned int unitFlags = NSCalendarUnitYear | NSCalendarUnitMonth | NSCalendarUnitDay | NSCalendarUnitHour | NSCalendarUnitMinute | NSCalendarUnitSecond;

NSDateComponents *components = [cal components:unitFlags fromDate:[self.formatter dateFromString:sendString] toDate:[self.formatter dateFromString:endSreing] options:0];

日期之间比较可用以下方法

-(BOOL)isEqualToDate:(NSDate *)otherDate;

与otherDate比较,相同返回YES

- (NSDate*)earlierDate:(NSDate *)anotherDate;

与anotherDate比较,返回较早的那个日期

- (NSDate*)laterDate:(NSDate *)anotherDate;

与anotherDate比较,返回较晚的那个日期

-(NSComparisonResult)compare:(NSDate *)other;

该方法用于排序时调用:

.当实例保存的日期值与anotherDate相同时返回NSOrderedSame

.当实例保存的日期值晚于anotherDate时返回NSOrderedDescending

.当实例保存的日期值早于anotherDate时返回NSOrderedAscending

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容