NSString与NSDate互相转换及NSDate比较

  • 由 NSDate 转换为 NSString:
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
NSString *strDate = [dateFormatter stringFromDate:[NSDate date]];
NSLog(@"%@", strDate);

// 结果:
// 2016-07-20 15:16:03
  • 由 NSString 转换为 NSDate:
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
NSDate *date = [dateFormatter dateFromString:@"2016-07-20 15:16:03"];
NSLog(@"%@", date);

// 结果:
// 2016-07-20 15:16:03 +0800
  • 日期之间比较可用以下方法
- (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
*/

results matching ""

    No results matching ""