【发布时间】:2013-05-02 06:22:33
【问题描述】:
我在 cellForRowAtIndexPath 中为 UITableView 调用了以下代码。
self.dateFormatter = [[NSDateFormatter alloc] init];
[self.dateFormatter setDateFormat:@"EEEE, dd MMM yyyy HH:mm:ss z"];
OLVisit *visit = [self.visits objectAtIndex:indexPath.row];
NSString *strVisitDate = [NSString stringWithFormat:@"%@", visit.olcreatedat];
NSDate *visitDate = [self.dateFormatter dateFromString:strVisitDate];
strVisitDate = [self.dateFormatter stringFromDate:visitDate];
visit.olcreatedat 返回的字符串格式如下(如下调试器截图所示)“2013-04-09 11:55:25 +0000”。
我得到一个 nil NSDate 值返回到 visitDate。
有人可以帮我解决这个问题吗?
【问题讨论】:
-
如果您将日期格式设置为与日期格式相匹配,您的运气会更好。
-
visit.olcreatedat的类型是什么?是NSString吗?如果是这样,请摆脱对stringWithFormat:的调用。 -
@HotLicks 该链接也有帮助,我之前在发布之前已经通读过它,但它不能解决我将日期格式化为“EEEE,dd MMM yyyy HH:mm”格式的问题:ss z"
-
@rmaddy visit.olcreatedat 在我的访问实体中定义为日期数据类型。在上面的场景中,我从核心数据中拉回了这个字段。
标签: ios nsdateformatter