我从 Google 服务器获得了一个 T-Z 格式的字符串,例如“2015-12-12T05:30:03.634Z”。如何通过 NSDateFormat
将其转换为格式 "YYYY-MM-dd HH:mm:ss"
?
我尝试了下面的一些代码,但总是在变量 dte 中得到 (null)。
+(NSDate*)tzStrToDateTime:(NSString*)tzStr{
NSLog(@"Convert tzStr: %@ ",tzStr);
NSString *tzFormat = @"yyyy-MM-dd'T'HH:mm:ss.SSSX";//2015-12-12T05:30:03.634Z
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:tzFormat];
[dateFormat setTimeZone:[NSTimeZone timeZoneWithName:@"Asia/Taipei"]];
NSDate *dte = [dateFormat dateFromString:tzStr];
NSLog(@"to Date: %@", dte);
return dte;
}
最佳答案
初始的日期格式是这样的
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat: @"yyyy-MM-dd'T'HH:mm:ss.SSSZ"];
[dateFormat setTimeZone:[NSTimeZone timeZoneWithName:@"Asia/Taipei"]];
NSDate *dte = [dateFormat dateFromString:@"2015-12-12T05:30:03.634Z"];
//Second Conversion
[dateFormat setDateFormat: @"yyyy-MM-dd HH:mm:ss"];
NSString *finalStr = [dateFormat StringFromdate:dte];
关于ios - 具有 T-Z 时间格式的 NSDateFormatter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35133114/