iOS如何获得一年中的天数?

use*_*065 2 numbers nsdate days leap-year ios

可能重复:
如何计算目标C中特定日期的一年中的某一天

我需要获得一年中的当天数,并且不知道哪个是最好的方法.

例:

21-jan-2012 - > 21

2-feb-2012 - > 33

2012年3月2日 - > 62

2011年3月2日 - > 61

有任何想法吗?

谢谢

Rok*_*arc 21

我参加派对有点晚了但不管怎样,这里有:

 NSDate *today = [NSDate date];
 NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"DDD"];
 NSInteger dayInYear = [[dateFormat stringFromDate:today] integerValue];
 NSLog(@"today is %d. day in year", dayInYear);
Run Code Online (Sandbox Code Playgroud)

14.jun.2012的结果:今天是166.一年一天

编辑:我很惊讶Google上没有易于查找的例子.

您也可以使用格式@"DD"来获取每月或@"D"每周的日期.

EDIT2:只是一个注意事项:创建NSDateFormatter可能是相当昂贵的操作.如果您的类经常使用此函数,则可能需要创建静态格式化程序ivar.