2015-05-28 2 views
0

Я пытаюсь форматировать два NSString к NSDate с этим кодом:Дата форматирования не работает 5/1916

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
[dateFormatter setDateFormat:@"MM/yyyy"]; 

NSString *dateString = @"5/1916"; 
NSString *dateString2 = @"6/1916"; 

NSDate *date = [dateFormatter dateFromString:dateString]; 
NSDate *date2 = [dateFormatter dateFromString:dateString2]; 

Угадайте:

дата равна нулю и date2 работает отлично (ISN» t nil). Любая идея, как это происходит?

enter image description here

Edit: Для тех, кто думает, что речь идет о строке, следующий кадр имеет проблему Samen. enter image description here

+0

обе даты отлично работает на моей стороне, даже на тренажере и реального устройства; и он представляет правильную дату. – holex

+0

Я добавил скриншот к моему вопросу с моим результатом. Это для реального устройства и симулятора –

+0

Точно, что вы хотите получить? Скажите, пожалуйста. – user3182143

ответ

0

код отлично работает с следующим результатом

Printing description of dateString: 
05/1916 
Printing description of date: 
1916-04-30 18:06:40 +0000 

Но проблема в том, что NSDate это то, что должно быть day, month , year Просто обновить свой код, чтобы накормить dateformatter правильной дату.

+0

Я добавил скриншот к моему вопросу с моим результатом. –

+1

попробуйте @ "05/1916" вместо @ "5/1916", так как itis "MM/yyyy" – Rajesh

+1

... или используйте '@" M/yyyy "в качестве форматирования. :) – holex

0

на большинстве языков, 5/1916 не принимается, но 05/1916 есть, так как формат MM/yyyy не M/yyyy. длина строки является обязательной.

надежда, что помогает, eiran

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