我在尝试将字符串格式化为NSDate时遇到了一些问题。 这是我的代码。
NSTimeZone *outputTimeZone = [NSTimeZone defaultTimeZone];
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setTimeZone:outputTimeZone];
[dateFormat setLocale:[NSLocale currentLocale]] ;
[dateFormat setDateFormat:@"dd/MM/yyyy HH:mm:ss"];
NSDate *myDate = [dateFormat dateFromString:dateString];
这是我尝试格式化的字符串。
" 09/11/2016 12:27:05"
这是我得到的结果
2016-11-09 04:48:29 UTC
请帮助我尝试各种解决方案和格式,但无济于事。
在调用dateFromString之后,添加行NSLog(" str =%@,date =%@",dateString,myDate);.使用该日志语句的输出更新您的问题。 - rmaddy 59分钟前
这是我的输出
str = 09/11/2016 14:13:35,date = 2016-11-09 06:13:35 +0000
答案 0 :(得分:-1)
使用timeZonewithAbbrevation而不是默认的timeZone。
将NSTimeZone *outputTimeZone = [NSTimeZone defaultTimeZone];
替换为
//对于GMT
NSTimeZone * outputTimeZone = [NSTimeZone timeZoneWithAbbreviation:@" GMT + 0:00"];
OR
//适用于UTC
NSTimeZone *outputTimeZone = [NSTimeZone timeZoneWithAbbreviation:@"UTC"];