2012-01-30 67 views
0

_savedTime返回nil被记录为 “2012-01-30九时40分29秒+0000” 为字符串。NSDateFormatter上dateFromString

但试图转换到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]: unrecognized selector sent to instance 0xa10c540

帮助!我的格式看起来是正确的,但也许我只需要一个单独的眼睛就可以了。

回答

1

错误表示_savedTime(或密钥@AlarmTime的值)已经是NSDate

有没有需要转换,所以你可以这样做:

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


日期格式假设传递给dateFromString:参数是一个NSString并试图调用length它和失败。

+0

BOOM!解决了它!,谢谢一堆! – Ian 2012-01-30 17:37:03