2016-02-15 5 views
-1

У меня есть дата отправки API в строку с универсальным временем, но когда я пытаюсь преобразовать в формат NSDate, он имеет тенденцию возвращать нуль. Я просмотрел много мест, но не смог найти способ решить эту проблему. Ниже мой код, который я написал. Пожалуйста, помогите мне найти, где я ошибаюсь. Строка, которую я пытаюсь преобразовать, - «Sun Feb 14 23:35:40 UTC 2016». Проблема, связанная с возвратом нулевого значения, связана с часовым поясом, в который я верю.Преобразование строки в NSDate в Swift

let dateFormatter = NSDateFormatter() 
dateFormatter.timeZone = NSTimeZone(abbreviation: "UTC") 
dateFormatter.dateFormat = "EEE MMM dd hh:mm:ss yyyy" 
dateFormatter.dateFromString("Sun Feb 14 23:35:40 UTC 2016") 
+0

@ Matt Я пытался это в детской площадке, так что я мог видеть результат, не захватив ее. – nravichan

+1

В вашей строке есть «UTC», но ваш формат не соответствует этому (в этом месте нужно «zzz»). Также 23 часа 'kk' не' hh' – matt

+0

@matt Я обработал UTC в часовом поясе. – nravichan

ответ

0

Как это:

let dateFormatter = NSDateFormatter() 
dateFormatter.dateFormat = "EEE MMM dd kk:mm:ss zzz yyyy" 
let d = dateFormatter.dateFromString("Sun Feb 14 23:35:40 UTC 2016") 
Смежные вопросы