2012-04-16 3 views
1

Я пытаюсь преобразовать дату из строки,странно Дата выпуск форматировщик в iPhone устройства

Ниже мой код,

str_date = @"04/16/2011 00:00:00 AM"; 

NSDateFormatter *dtF = [[NSDateFormatter alloc] init]; 
[dtF setDateFormat:@"MM/dd/yyyy HH:mm:ss a"]; 

NSDate *d = [dtF dateFromString:str_date]; 


NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; 
[dateFormat setDateFormat:@"yyyy-MM-dd"]; 
NSString *dateString = [dateFormat stringFromDate:d]; 
[dateFormat release]; 

return dateString; 

Здесь проблема в тренажере работает нормально и преобразует строку до настоящего времени и даты в строку, но с устройством, не в состоянии преобразовать строку датировать

в IPOD сетчатке он не показывает дату, но с iPhone 3gs он показывает дату

Пожалуйста, помогите мне, что я сделал неправильно?

+0

Вы могли бы быть запущены в [этом вопросе] (HTTP://stackoverflow.com/questions/6613110/what-is-the-best-way-to-deal-with-nsdateformater-locale-feature) - телефон ведет себя странно, если настройка 12/24 часа в настройках находится в конфликт с вашей локалью. –

+0

Я решил проблему, я просто удалил время со строки, а затем удалил HH: mm: ss a, теперь он работает, я думаю, что были некоторые проблемы, подобные сообщению Hot Licks. –

ответ

1

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

NSDateFormatter *dtF = [[NSDateFormatter alloc] init]; [dtF setDateFormat:@"MM/dd/yyyy hh:mm:ss a"]; 

Поскольку использование HH для формата 24 часов и чч использовать для 12-часового формата ...

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