【发布时间】:2014-06-14 16:30:50
【问题描述】:
我在 OS 3.x 上运行了以下代码
NSString *stringDate = @"2010-06-21T20:06:36+00:00";
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssZ"];
NSDate *theDate = [dateFormatter dateFromString:stringDate];
NSLog(@"%@",[dateFormatter stringFromDate:theDate]);
但现在在iOS4模拟器下最新的xcode 3.2.3中,变量theDate为nil。
我查看了类参考,并没有看到使用这些特定方法为 iOS4 弃用或以不同方式实现的任何内容。我遗漏了什么?
【问题讨论】:
-
似乎如果我从 stringDate 中删除“+00:00”,然后从格式中删除“Z”,它将正常工作,但这并不是一个真正的选择,因为动态数据我get 附加了时区,我真的不想为我得到的每个日期撕掉那部分。而且我找不到任何文件说不再以这种方式支持时区。
-
我想我明白了。我得到的格式介于 RFC 822 和 GMT 之间。如果我将“+00:00”更改为“+0000”,那么我可以在格式上使用“Z”。如果我将其更改为“GMT+00:00”,那么我可以使用 ZZZZ 正确获取数据。似乎已经剥离了一些东西来处理这种混合,因为它以前在 OS 3.x 上为我工作。
标签: iphone ios4 nsdateformatter