打印当前日期。下面。
是否有任何方法从8月2日到9月2日提供日期。
NSDateFormatter* dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"dd"];
NSString *dateString = [dateFormatter stringFromDate:[NSDate date]];
NSLog(@"%@",dateString);
答案 0 :(得分:2)
NSDateComponents *comps = [[NSDateComponents alloc] init];
NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSDateFormatter* dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"dd"];
int nrOfDays = 30;
for(int i = 0; i<=nrOfDays; i++){
[comps setDay:i];
NSDate *date = [gregorian dateFromComponents:comps];
NSString *dateString = [dateFormatter stringFromDate:date];
NSLog(@"%@",dateString);
}
[dateFormatter release];
[gregorian release];
[comps release];
我不是100%肯定,但我认为这会奏效。可能是一些语法错误,因为我没有尝试过,目前无法访问xcode。
答案 1 :(得分:0)
Date and Time Programming Guide中有关于日历计算的整个部分。
重要的是使用日期组件而不是尝试将秒添加到一天。
如果日期跨度不同怎么办?如果夏令时进入/停止运行怎么办?操作NSDateComponents时会考虑这些事情,如果你只是添加几秒就会很脆弱。
答案 2 :(得分:-1)
使用[NSDate dateSinceTimeInterval:(NSTimeInterval)]
NSTimeInterval位于secs
,所以24小时后会86400secs
运行for循环并通过添加timeInterval
创建一个新日期 NSDate *newDate = [NSDate dateSinceTimeInterval:(NSTimeInterval)]