Я протестировал свое приложение с региором формата США, и отображение даты верное. Когда регион изменился в Италию, где я живу, теперь имеет нулевое значение.IOS: NSDateFormatter для региона формата Италия
Мой стартер дата строка: - "2 мая 2013 6:46:33 PM" Дата
Результат правильным является: - "02/05/2013 18:46:33"
Вот мой код:
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
dateFormatter setDateFormat:@"MM dd, yyyy hh:mm:ss a"];
NSDate *dateFromString;
dateFromString = [dateFormatter dateFromString:dataStr];
[dateFormatter setDateFormat:@"dd/MM/yyyy HH:mm:ss"];
dateFormatter.locale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"];
NSString *stringFromDate = [dateFormatter stringFromDate:dateFromString];
Ницца. Спасибо за объяснение –
ЭТО РЕШЕНИЕ. THANKS –
После # 2 в этом сообщении мне помогли, я просто хотел добавить ссылку на [Apple Technical Q & A] (https://developer.apple.com/library/ios/qa/qa1480/_index.html) об этом , Это должно быть необходимо прочитать всем, кто наткнулся на этот вопрос. – greg