格式化2个NSDate实例的简单算法

时间:2012-02-17 17:41:28

标签: objective-c ios nsdate nsdateformatter

我有两个NSDate对象实例,它们代表电影文件的开始时间和结束时间。考虑一下

    NSDate *startDate = [formatter dateFromString:startDateString];
    NSDate *endDate = [formatter dateFromString:endDateString];

所以现在我需要形成一个NSArray,他们将每个元素除以他们时间差异的一小时。更简单一点,例如,我有开始日期

2012/02 / 16T22:00

和结束日期

2012/02 / 17T03:30

现在我需要的是以下对象的数组:

2012/02/16 T 22:00
2012/02/16 T 23:00
2012/02/17 T 00:00
2012/02/17 T 01:00
2012/02/17 T 02:00
2012/02/17 T 03:00

我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:4)

以下代码将为您提供一个按小时递增的日期数组。

NSMutableArray *dates = [NSMutableArray array];
NSDate *date = startDate;
while ([date compare:endDate] == NSOrderedAscending) {
    [dates addObject:date];
    date = [NSDate dateWithTimeInterval:3600 sinceDate:date];
}
相关问题