Конвертировать NSDate в мм / дд / гггг - PullRequest
12 голосов
/ 11 января 2012

Я знаю, что этот вопрос похож на другие, но я не могу найти, где мой код работает неправильно. Я пытаюсь преобразовать текущую дату в формат мм / дд / гггг. Вот что я использую:

NSDate *date = [[NSDate alloc]init];

NSDateFormatter *formatter = [[[NSDateFormatter alloc] init] autorelease];
[formatter setDateFormat:@"mm/dd/yyyy"];

NSLog(@"%@", [formatter stringFromDate:date]);

Проблема в месяце. Каждый раз, когда я запускаю этот код, месяц отличается. Например, в первый раз моя дата была 32/11/2012, и я просто запустил ее, и это было 55/11/2012.

Есть ли причина, по которой это будет меняться? Дни и годы кажутся хорошими.

Спасибо.

1 Ответ

42 голосов
/ 11 января 2012

Проверьте регистр:

mm означает минуты

MM означает месяцы

Так что ваш код, вероятно, должен читаться как

NSDate *date = [[NSDate alloc]init];

NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"MM/dd/yyyy"];

NSLog(@"%@", [formatter stringFromDate:date]);
...