1

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)

为什么?

4

1 回答 1

2

将您的日期格式更改为yyyyMMddHHmmss.

我不知道“hh”和“HH”之间的区别,但我知道这是正确的做法。我测试过,它也可以工作。

编辑:

据我的经验,“hh”适用于 12 小时制“HH”适用于 24 小时制

于 2013-11-13T06:52:33.443 回答