NSDateFormatter, возвращающий ноль в dateFromString - PullRequest
0 голосов
/ 30 января 2012

_savedTime записывается как «2012-01-30 09:40:29 +0000» как строка.

Но при попытке конвертирования в NSDate происходит сбой «SIGBRT».

NSString * _savedTime = [_savedAlarm objectForKey:@"AlarmTime"];
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"yyyy-MM-dd hh:mm:ss Z"];

NSDate* time1 = [dateFormat dateFromString:_savedTime];

Разрыв последней строки с ошибкой:

- [__ NSDate length]: нераспознанный селектор отправлен на экземпляр 0xa10c540

Помощь!Мое форматирование выглядит правильно, но, возможно, мне просто нужен отдельный взгляд на это.

1 Ответ

1 голос
/ 30 января 2012

Ошибка указывает, что _savedTime (или значение ключа @AlarmTime) уже является NSDate.

Нет необходимости в преобразовании, поэтому вы можете просто сделать:

NSDate* _savedTime = [_savedAlarm objectForKey:@"AlarmTime"];


Модуль форматирования даты предполагает, что параметр, переданный dateFromString:, является NSString, и пытается вызвать length для него и завершается неудачей.

...