2016-04-16 47 views
0

我想解析这个日期:2016-04-16T10:00:00-0400但我不知道在这种情况下什么是'-0400'?什么是正确的日期格式(NSDateFormatter)?

NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; 
[dateFormat setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss<?>"]; 
               ^^^ 
NSDate *date = [dateFormat dateFromString:@"2016-04-16T10:00:00-0400"]; 

感谢您的帮助!

+1

请仔细阅读NSDateFormatter文档。在列出所有日期格式的文档中找到Unicode标准的链接。 – gnasher729

+0

感谢您的提示!我找到了答案! – Thlbaut

回答

1

使用

NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; 
[dateFormat setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssZ"]; 
//[dateFormat setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"]]; 
NSDate *date = [dateFormat dateFromString:@"2016-04-16T10:00:00-0400"]; 
NSLog(@"date ==%@",date); 
[dateFormat setDateFormat:@"yyyy"]; 
NSString *finalStr = [dateFormat stringFromDate:date]; 
NSLog(@"finalStr ==%@",finalStr); 

输出像

enter image description here