2016-11-29 72 views
0

我有以下字符串2016-10-26T16:01:18.361Z与如下因素代码工作:NSDateFormatter- dateFromString返回nil当集AM/PM

formater = [[NSDateFormatter alloc] init]; 
[formater setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"]; 
[formater setTimeZone:[NSTimeZone timeZoneWithName:@"GMT"]]; 

但使用相同string和相同formater被返回nil当系统时钟设置为更改为AM/PM

我应该使用什么格式?

+0

无关,但不要在格式字符串中引用'Z'。它应该是'@“yyyy-MM-dd'T'HH:mm:ss.SSSZ”'。 – rmaddy

+0

仍然失败:( – Ricardo

+0

这就是为什么我说我的评论与你的直接问题没有关系,这将通过设置格式化程序的语言环境为en_US_POSIX来解决 – rmaddy

回答

0

至于@rmaddy说这段代码工作正常。

formater = [[NSDateFormatter alloc] init]; 
[formater setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSSZ"]; 
[formater setTimeZone:[NSTimeZone timeZoneWithName:@"GMT"]]; 
[formater setLocale:[NSLocale localeWithLocaleIdentifier:@"en_US_POSIX"]];