我想从这个字符串中获取日期2014-10-08T15:09:19 + 05:30。我的代码是
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:sszzz"];
NSLog(@"%@",[dateFormatter dateFromString:@"2014-10-08T15:09:19+05:30"]);
但是o / p是2014-10-08 09:39:19 +0000
预计是2014-10-08 15:09 PM
还看到其他线程,并按照其他人的建议尝试使用timezone,但无法获得正确的日期。
答案 0 :(得分:2)
问题在于您的代码等同于:
NSDate *date = [dateFormatter dateFromString:@"2014-10-08T15:09:19+05:30"];
NSLog(@"%@", [date description]);
// ^^^^^^^^^^^
和[NSDate description]
在GMT时区生成一个字符串,这会导致您的混淆。