2013-08-05 3 views
-2

Здесь я рассмотрел ряд других решений, но не могу заставить это работать для моего дела.Форматирование даты из строки

Я потребляющие API, из которых некоторые части будут сохранены в основные данные, однако формат дата в API не совпадает с которой ожидает основные данные,

Даты, я получаю в формате:

28 июня 2013 5:51:28 PM

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

NSDate *createdDate = [key objectForKey:@"createdDate"]; 

NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; 
[dateFormat setDateFormat:@"mm/dd/yyyy hhmmss"]; 
NSDate *date = [dateFormat dateFromString:createdDate]; 
+0

что вы получаете дату или строку? –

+0

вы можете изменить формат даты, прежде чем сохранять его в основных данных .. если вы не можете изменить формат .. нам известно, в каком формате вы получаете дату в строке или дате? поэтому, мы можем ответить на ваш вопрос .. – Shivaay

+0

Я получаю данные JSON, которые показывают дату в формате 28 июня 2013 г. 17:51:28 Который, как @wain упоминает, не следует анализировать как дату сразу , но должен быть сохранен в виде строки, затем проанализирован, я проверю формат на документацию, как предложено – user499846

ответ

2

createdDate не может быть NSDate. Если бы это был ваш код, он бы разбился, а не просто не работал. Это должно быть NSString.

NSString *createdDate = [key objectForKey:@"createdDate"]; 

Далее, строка даты вы говорите, что вы получаете Jun 28, 2013 5:51:28 PM, не даже немного соответствовать формату, который вы пытаетесь использовать в mm/dd/yyyy hhmmss. Для начала формат имеет косые черты, а строка даты - нет. Формат должен точно соответствовать строковому построению. Снова прочтите спецификацию формата форматирования даты и измените свой формат. У меня его нет, но это будет что-то вроде MMM dd, yyyy H:mm:ss a (не просто используйте этот формат, сначала проверьте его).

+0

Спасибо, это имеет большой смысл, я был unsure of slashes и т. д., я проверю документацию и затем отвечу, спасибо за вашу помощь. – user499846

+0

Спасибо, что я смог проверить это на основании документации и нашел правильный формат: [dateFormat setDateFormat: @ "MMM dd, yyyy h: мм: ss a "]; Мне просто нужно разобраться в локали, чтобы придерживаться +1 часа для британского летнего времени - спасибо за вашу помощь. – user499846

+0

Wain Я тоже пытаюсь понять эту штуку и пытаюсь посмотреть, как вы отвечаете за помощь, любой способ, который вы можете заглянуть в мой Q, быстро, чтобы, возможно, предоставить свой опыт? Большое спасибо! http://stackoverflow.com/questions/25675839/rkvaluetransformers-failed-transformation-of-value-to-nsdate?noredirect=1#comment40162652_25675839 –

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