NSDateFormatter показывает неверный месяц - PullRequest
0 голосов
/ 05 июля 2018

Описание:

Я использую NSDateFormatter для форматирования даты, но вывод неправильный, месяц меняется, и даже время меняется в некоторых случаях.

Код:

NSDate *date=[NSDate date];
NSString *datestring=@"2018-07-05 12:14:29";
NSDateFormatter *formatter = [[NSDateFormatter alloc] init] ;
[formatter setDateFormat:@"yyyy-MM-DD HH:mm:ss"];
date = [formatter dateFromString:datestring];
NSLog(@"%@", [formatter stringFromDate:date]);

Ожидаемый результат:

2018-07-05 12:14:29

Выход получен:

2018-01-05 12:14:29

1 Ответ

0 голосов
/ 05 июля 2018

DD - это day of year

dd является day of month

Поэтому замените строку ниже

[formatter setDateFormat:@"yyyy-MM-DD HH:mm:ss"];

этим

[formatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
...