2017-01-24 3 views
-4

У меня есть строка даты следующим образом, когда я пытаюсь отформатировать ее со следующим форматированием даты, она возвращает nil. Проверяется датаФормат. И когда я пробую это на сайте nsdateformatter.com, он работает. Я не могу обвести вокруг себя голову.iOS Swift date formatter возвращает nil

дата
let dateString = "168.18:26:50.5783449" 
let dateFormat = "d.HH:mm:ss" 
let dateFormatter = DateFormatter() 
dateFormatter.dateFormat = dateFormat 
let date = dateFormatter.date(from: dateString) 

равна нулю

+1

Вам не хватает миллисекунд в вашем формате ('.SSSSSSS'). Вам также нужно использовать 'D' (день года), а не' d' (день месяца). – Sulthan

+0

Да, я сделал это, и это сработало спасибо –

ответ

2

Правильный формат будет D.HH:mm:ss.SSSSSSS.

Примечание D за день года вместо дня месяца. Обратите внимание на отсутствующий шаблон в миллисекундах.

Однако эта дата не является полной, потому что ей не хватает года, поэтому вам не нужно получать ожидаемую дату.

Смежные вопросы