NSString *value = [newProperties objectForKey:key]
NSLog(@"%@",value);
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd hh:mm:ss zzzz"];
NSTimeZone *gmt = [NSTimeZone timeZoneWithAbbreviation:@"GMT"];
[dateFormatter setTimeZone:gmt];
NSDate *dateFromString = [dateFormatter dateFromString:value];

2015-02-13 17:16:00 +0000
但是我在最后一行说到崩溃:

'-[__NSTaggedDate length]: unrecognized selector sent to instance 0xe41ba8e68d000000'

#1楼 票数:4 已采纳

该错误清楚地表明该value已经是NSDate ,而不是NSString

您的所有代码都可以替换为一行:

NSDate *value = [newProperties objectForKey:key];

您可以通过记录value的类来验证该value是日期:

NSLog(@"value class = %@", [value class]);

作为旁注。 如果确实确实具有所示格式的日期字符串,则格式说明符将需要为yyyy-MM-dd HH:mm:ss Z

  ask by Nitish translate from so

未解决问题?本站智能推荐:

2回复

如何使用NSDateFormatter生成2012-07-28T23:59:00-06:00?

格式化此字符串的适当方法是什么: 2012-07-28T23:59:00-06:00 这是我正在使用的代码,日期格式化程序当前将s.due_At的值设置为nil,并且两个NSLogs都显示为null。 我从字典中获取上面的字符串,以确保我已将其记录在日志中。 如何解决此问题
10回复

从这样的日期中删除时间 2016-02-10 00:00:00

你好,我有这样的约会 我只想以这种风格从中获取日期 这是我尝试过的
2回复

是否可以使用NSDateFormatter解析“星期五,2012年2月24日20:00:00 GMT”?

我正在尝试解析 使用NSDateFormatter可以做到这一点吗?
2回复

如何将字符串2013-01-27T02:31:47 + 08:00转换为NSDate

我已经尝试过很多次将字符串2013-01-27T02:31:47+08:00转换为NSDate。 我已经找到了Apple的格式指南 ,并复制了其代码并进行了尝试,但是它不起作用。
3回复

如何为日期结构“2014-04-01T13:30:00.000 + 0000”设置日期格式化程序

我是目标C的新手。我想设置日期格式化程序,将日期“2014-04-01T13:30:00.000 + 0000”转换为另一种格式 - “2014/04/01 13:30:00 AM”。 我已经尝试了很多格式,但它不起作用。 请帮忙解决这个问题。
2回复

NSDateFormatter 费用

DateFormatters 的创建/修改成本有多高? 创建 4 个略有不同的 DateFormatter 或修改单个 DateFormatter 是否更便宜? 我依稀记得修改 DateFormatters 和修改 GL Context 一样昂贵(也就是说:非常)。 关于为什么分配或初始化 N
3回复

NSDateFormatter麻烦吗?

我正在尝试解析RSS feed,但是日期很难解析。 日期字符串为: publishedDate = "2013-01-08T20:09:02.000Z" 这是我的代码: 为什么date返回nil? 另外,我正在尝试将UTC时间转换为CST时间。
2回复

NSDateFormatter崩溃

我正在尝试使用NSDateFormatter格式化日期,但是我的应用因EXC_BAD_ACCESS而崩溃。 这是代码: 上面的代码从两个自定义UITableViewCell获取日期。 值不为空(我已经测试过)。 但是,当我尝试使用Helpers类中的defaultFormatt