今天整理了下iOS中时间的一些操作:
1. 获得当前时间
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd"];
NSString * timeStr = [dateFormatter stringFromDate:[NSDate date]];
NSLog(@"timeStr = %@",timeStr);
2. 两个时间比较大小
NSDate *dateA = [dateFormatter dateFromString:timeStr];
NSDate *dateB = [dateFormatter dateFromString:@"2015-11-11"];
NSComparisonResult result = [dateA compare:dateB];
if (result == NSOrderedDescending)
{
// 前面的跟后面的比 大于
NSLog(@"前面的时间大于");
}
else if (result == NSOrderedAscending)
{
// 前面的跟后面的比 小于
NSLog(@"前面的时间小于");
}
else if (result == NSOrderedSame)
{
// 相等
}
3. 计算两个时间中间差几天
NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
unsigned int unitFlags = NSDayCalendarUnit;
NSDateComponents *comps = [gregorian components:unitFlags fromDate:dateA toDate:dateB options:0];
NSLog(@"days = %ld",(long)[comps day]);