是否有一种方法可以获取NSDate中存储的日期和今天之间的天数



我想显示从现在到我存储在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);

最新更新