在我的应用中,我使用此代码从NSDate
创建NSString
:
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyyMMddhhmmss"];
dateFormatter.timeZone = [NSTimeZone timeZoneForSecondsFromGMT:[NSTimeZone localTimeZone].secondsFromGMT];
NSDate *dateFromString = [[NSDate alloc] init];
dateFromString = [dateFormatter dateFromString:comment.created];
NSLog(@"comment.created %@ dateFromString %@",comment.created, dateFromString);
但对于某些字符串,它返回null!
对于输入20131031083130
,它会返回2013-10-31 04:31:30
,何时适用于20131107200617
- (null)
StreetJournal[32054:60b] comment.created 20131031083130 dateFromString 2013-10-31 04:31:30 +0000
StreetJournal[32054:60b] comment.created 20131107200617 dateFromString (null)
为什么?
答案 0 :(得分:2)
将日期格式更改为 yyyyMMddHHmmss
。
我不知道'hh'和& 'HH',但我知道这是正确的做法。我测试了&它也在发挥作用。
修改强>
根据我的经验'hh'为12小时格式& 'HH'为24小时格式。