Я немного опоздал на вечеринку, но в любом случае, здесь идет:
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);
результат для 14.jun.2012: сегодня 166. день в году
EDIT: я был поражен тем, что ther В Google не было простого примера.
Вы также можете использовать формат @"DD"
, чтобы получить день в месяце или @"D"
, чтобы получить день в неделю.
EDIT2: Просто примечание: создание NSDateFormatter
может быть довольно дорогим операция. Если ваш класс часто использует эту функцию, вам может понадобиться создать статический форматировщик ivar.
Почему downvotes? Это правильный вопрос к обоснованной логической необходимости? – davidethell