2016-06-01 1 views
0

У меня есть код, чтобы преобразовать строку в дату, как:Преобразовать Строка Дата Возвращает NIL в течение времени после полудня только

  let dateString = detailData.value["eventStart"] as! String 
      print(dateString) 

      let dateFormatter = NSDateFormatter() 
      dateFormatter.dateFormat = "yyyy-MM-dd hh:mm:ss Z" /*find out and place date format from http://userguide.icu-project.org/formatparse/datetime*/ 
      let date = dateFormatter.dateFromString(dateString) // || date!.timeIntervalSince1970 >= presentDate.timeIntervalSince1970 

      print(date?.timeIntervalSince1970) 

Выход есть:

2016-05-31 03:18:11 +0000 
Optional(1464664691.0) 

2016-06-03 14:00:44 +0000 
nil 

2016-06-01 00:38:08 +0000 
Optional(1464741488.0) 

2016-06-04 00:25:55 +0000 
Optional(1464999955.0) 

2016-05-31 22:19:54 +0000 
nil 

Я вижу, что время в во второй половине дня (12+) возвращение ноль.

Как я могу предотвратить это?

ответ

2

Ваш синтаксический анализ не работает. В вашем случае его отказ из-за недопустимого компонента часа во входной строке.

Использовать 24-часовой формат HH вместо 12-часового формата hh.

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

  • Нет связанных вопросов^_^