Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/96.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 字符串中的NSDateFormatter为零_Ios_Swift_Nsdate_Nsdateformatter - Fatal编程技术网

Ios 字符串中的NSDateFormatter为零

Ios 字符串中的NSDateFormatter为零,ios,swift,nsdate,nsdateformatter,Ios,Swift,Nsdate,Nsdateformatter,我正试着用一个字符串来定一个日期。字符串是:“2015-09-09T00:00:00.000Z” 我的NSDateFormatter dateFormat为: dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'" dateFormatter.timeZone = NSTimeZone(forSecondsFromGMT: 0) dateFormatter.locale = NSLocale(localeIdentifier: "us_

我正试着用一个字符串来定一个日期。字符串是:“2015-09-09T00:00:00.000Z”

我的NSDateFormatter dateFormat为:

dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"
dateFormatter.timeZone = NSTimeZone(forSecondsFromGMT: 0)
dateFormatter.locale = NSLocale(localeIdentifier: "us_US")
它的格式正确,但我的其他尝试只是简单地返回nil

我试过“yyy-MM-dd'T'HH:MM'Z'”甚至“yyy-MM-dd”。两者都返回零

我希望它在下午6:30读到09-10-2015。
有人能提供一些建议吗?

我认为您应该将locale设置为“en_US_POSIX”


请注意,
dateFormatter.dateFromString(dateString)
可能不会为您提供输出,因为您传递的字符串可能不是日期字符串。

使用返回
nil
的实际代码更新您的问题。您发布的代码没有返回任何内容。请不要转义Z=“yyyy-MM-dd'HH:MM:ss.SSSZ”,将区域设置设置为“en_-US_-POSIX”,并将日历设置为NSCalendar(calendarIdentifier:NSCalendarIdentifierISO8601)您所在位置的时区偏移量是多少。为什么您期望UTC时间00:00返回下午6:30的日期?偏移时间是5个半小时吗?对不起,Leo,我刚才用的是6:30pm作为示例。@yamski请包含输入字符串和相应的时区。您的日期在UTC时间看起来像ISO8601(Z表示UTC时间)
dateFormatter.dateFormat = @"yyyy-MM-dd'T'HH:mm:ssZ"
dateFormatter.locale = NSLocale(localeIdentifier:@"en_US_POSIX")
dateFormatter.timeZone = NSTimeZone(forSecondsFromGMT:0)
dateFormatter.dateFromString(dateString)