2014-01-24 8 views
-2

Мне нужно преобразовать 24 января 2014 года, 7:27:56 PM в NSDate , но перед проблемой для преобразования из-за верхнего регистра PM/AM я использую этот код, но это дает мне ноль ,Преобразование NSString в NSDate

NSString *stringDate = @"Jan 24, 2014, 7:27:56 PM"; 
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
[dateFormatter setDateFormat:@"MMM dd, yyyy hh:mm:ss a"]; 
NSDate *date=[dateFormatter dateFromString:stringDate]; 
NSLog(@"Date 1 : %@",date); //2013-02-28 12:00:00 +0000 
+0

Какие подходы вы пытались изменить свой ввод в правильном формате или изменить формат даты, чтобы принять ввод в его текущей форме? –

+0

Вам также нужно установить языковой стандарт форматирования 'en_US_POSIX'. Если вы этого не сделаете, ваш код не будет работать на устройствах с использованием языка, отличного от английского. – rmaddy

ответ

3

Ваша форматировщик строка содержит последовательность «гггг чч», однако stringDate имеет «гггг, чч». Попробуйте следующее:

[dateFormatter setDateFormat:@"MMM dd, yyyy, hh:mm:ss a"]; 
Смежные вопросы