我在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]);
Run Code Online (Sandbox Code Playgroud)
但现在在iOS4模拟器下的最新xcode 3.2.3中,变量theDate为零.
我查看了类引用,并没有看到任何已弃用或使用这些特定方法为iOS4实现不同的内容.我遗漏了什么?
我使用rails作为后端,默认日期输出是2008-12-29T00:27:42-08:00
但是在我的研究之后NSDateFormatter无法支持它,除了我将日期更改为2008-12-29T00:27:42-0800
这是我用来解析ISO 8601日期的代码,但它不起作用
NSDateFormatter* dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssZ"];
NSLog(@"%@", [dateFormatter dateFromString:@"2008-12-29T00:27:42-08:00"]);
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
我似乎在尝试将Google日历日期字符串(从公共JSON解析)转换为NSDate格式时遇到了很大困难.
Google的Calendar API的结果采用以下格式:
"2012-06-20T11:00:00.000+01:00"
Run Code Online (Sandbox Code Playgroud)
我正在尝试将其格式化为NSDate,如下所示:
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
formatter.dateFormat = @"yyyy-MM-dd'T'HH:mm:ss.SSSzzz";
NSDate *gmtDate = [formatter dateFromString:[whenDict objectForKey:@"startTime"]];
Run Code Online (Sandbox Code Playgroud)
但是,我一直得到一个null结果,所以我想知道是否有人知道正确的[NSDate dateformat]对于我想要转换的结果是什么 ...
我已经尝试了各种各样的dateFormat变种,但是经过几个小时的多个字母变化后,我还没有找到合适的版本!
即我认为问题在于:
formatter.dateFormat = @"yyyy-MM-dd'T'HH:mm:ss.SSSzzz";
Run Code Online (Sandbox Code Playgroud)
干杯,