2013-09-16 3 views
-1

Как получить только месяц и дату от NSDate и сохранить как дату? Я googled, но не нашел решения.Как получить месяц и день от NSDate?

Я пытался что-то подобное, но не получилось -

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
[dateFormatter setDateFormat:@"dd/MM"]; 
NSDate *dateFromString = [[NSDate alloc] init]; 
NSString *dateString = [arr objectAtIndex:0]; 
dateFromString = [dateFormatter dateFromString:dateString]; 
+3

ли вы смотрите на 'NSDateComponents'? – Wain

+0

Что это должно делать? 'NSDate * dateFromString = [[NSDate alloc] init];' –

+0

(Я подозреваю, что '[arr objectAtIndex: 0]' не является ожидаемым значением или не соответствует формату даты.) –

ответ

3

Вы можете сделать это следующим образом:

NSDate *theDate = ... 
NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar]; 
NSDateComponents *comps = [gregorian components:NSMonthCalendarUnit | NSDayCalendarUnit 
             fromDate:theDate]; 
NSInteger mm = [comps month]; 
NSInteger dd = [comps day]; 
+3

Пожалуйста, не кормите медведей. –

+0

Вы должны использовать 'NSInteger' или' NSUInteger' вместо 'int', особенно после выхода iPhone 5S. Хотя, для этого примера, я думаю, что хорошо придерживаться 'int'. :) – ArtSabintsev

+2

Когда вы кормите медведей, они продолжают возвращаться к раздаточным материалам и никогда не учатся заботиться о себе. В конце концов рейнджеры должны стрелять в них. –

Смежные вопросы