Следующий кодNSDateFormatter неправильно разбирает?
NSDateFormatter* dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
[dateFormatter setDateFormat:@"MM/dd/yyyy"];
NSString* source = @"11/30/2012";
NSDate* date = [dateFormatter dateFromString:source];
NSLog(@"%@ → %@", source, date);
результаты в этом выходе
11/30/2012 → 2012-11-29 15:00:00 +0000
Я ожидал, что времена быть одинаковым. (т.е. справа 2012-11-30 00:00:00 +0000) ... потому что я знаю, что время ввода уже указано в UTC. Таким образом, выход должен быть таким же, если выходное время также выводится в формате UTC. Является ли это часовым поясом? В левой строковой дате не должно быть указаных временных интервалов, и NSDate должен выводить даты UTC?
Да, это проблема с часовым поясом. –
Возможный дубликат [NSDateFormatter dateFromString возвращает неверную дату] (http://stackoverflow.com/questions/11273001/nsdateformatter-datefromstring-returns-incorrect-date) – rmaddy
У этого сообщения нет правильного и сжатого ответа, который был проверен как правильный. Проверенный ответ слишком длинный, а не тот. – Jonny