我想显示从现在到我存储在NSDate中的日期之间的天数。有没有办法获得两个NSDate对象之间的天数?????
我发布了一个开源类库来实现这一点。
看看RelativeDateDescriptor,它可以用来获得如下时间差。。。
RelativeDateDescriptor *descriptor = [[RelativeDateDescriptor alloc] initWithPriorDateDescriptionFormat:@"%@ ago" postDateDescriptionFormat:@"in %@"];
// date1: 1st January 2000, 00:00:00
// date2: 6th January 2000, 00:00:00
[descriptor describeDate:date2 relativeTo:date1]; // Returns '5 days ago'
[descriptor describeDate:date1 relativeTo:date2]; // Returns 'in 5 days'
试试这个,它对我有效。
NSDateFormatter *f = [[NSDateFormatter alloc] init];
[f setDateFormat:@"yyyy-MM-ddHH:mm:ss"]; // your date format
NSDate *startDate = [NSDate date]; // Today's date
NSString * end = @"2014-08-2312:00:00"; // your date
NSDate *endDate = [f dateFromString:end];
NSUInteger unitFlags = NSDayCalendarUnit;
NSCalendar *gregorianCalendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSDateComponents *components = [gregorianCalendar components:unitFlags
fromDate:startDate
toDate:endDate
options:0];
NSLog(@"%ld Days Left",(long)components.day);