ios - 某些日期的 NSDateformatter 问题

标签 ios objective-c nsdate nsdateformatter

我的代码是

    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
    [dateFormatter setTimeZone:[NSTimeZone timeZoneWithName:@"EDT"]];
    [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:dd"];
    NSString *strDate = @"my date from backend";
    NSLog(@"value from backend %@",strDate);
    NSLog(@"after chnage by formatter %@",[dateFormatter dateFromString:strDate]);

在我的控制台记录结果

value from backend 2014-04-18 05:01:13
after chnage by formatter 2014-04-12 23:31:00 +0000
value from backend 2014-04-18 05:01:34
after chnage by formatter (null)
value from backend 2014-04-18 05:04:27
after chnage by formatter 2014-04-26 23:34:00 +0000
value from backend 2014-04-18 05:04:47
after chnage by formatter (null)
value from backend 2014-04-18 05:05:14
after chnage by formatter 2014-04-13 23:35:00 +0000
value from backend 2014-04-18 05:05:21
after chnage by formatter 2014-04-20 23:35:00 +0000
value from backend 2014-04-18 05:08:38
after chnage by formatter (null)

为什么有些日期是空的..任何人都可以帮助我吗?

最佳答案

日期格式应该是:

[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];

请注意,我将末尾的 dd 更改为 ss。 对于大多数情况,返回的日期是错误的。对于那些秒数超过 30 的情况,您将得到 null。

关于ios - 某些日期的 NSDateformatter 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23149455/

相关文章:

ios - 方法乱序触发

ios - 防止其他应用程序使用动态框架

ios - objective c error "No visible @interface for ' NSString' declares the selector 'timeIntervalSinceDate:' "

iphone - 随机调用一个方法

objective-c - 将 NSInteger 变量传递给 NSMutableDictionary 或 NSMutableArray

objective-c - 将 Action 限制在每天一次

Swift - 如何默认存储多个日期并检索它?

ios - 网络请求被保存在内存中?

ios - 使用 Graph API 在个人资料帖子中标记用户

ios - -[UITableView _configureCellForDisplay :forIndexPath:] 中的断言失败