2016-05-07 2 views
0

My formatter возвращает nil с некоторыми строками даты, это зависит от того, как строятся строки. Я подозреваю, что проблема с часовым поясом или что-то в этом роде.NSFormatter nil dateFromString

Мой форматировщик:

let formatter : NSDateFormatter = NSDateFormatter() 
formatter.dateFormat = "yyyyMMdd'T'hhmmss" 
let departureDate = formatter.dateFromString(departureDateString) 

Строка Я хочу разобрать: 20160508T150000 -> Я получаю результаты ноль

Проверить отлаживать ниже:

po formatter.dateFromString("20160508T100000") 
▿ Optional<NSDate> 
    - Some : 2016-05-08 08:00:00 +0000 

(lldb) po formatter.dateFromString("20160508T110000") 
▿ Optional<NSDate> 
    - Some : 2016-05-08 09:00:00 +0000 

(lldb) po formatter.dateFromString("20160508T120000") 
▿ Optional<NSDate> 
    - Some : 2016-05-07 22:00:00 +0000 

(lldb) po formatter.dateFromString("20160508T130000") 
nil 

Что я делаю неправильно? Необходимо указать часовой пояс? благодаря

+0

~ Я в тупике. Это очень странно. Единственное, что я могу себе представить, это что-то делать с часами в полдень. ~ @vadian выяснил это :) – SpacyRicochet

ответ

2

... 0000 24-часовой режим, следовательно, он должен быть капиталом H

formatter.dateFormat = "yyyyMMdd'T'HHmmss" 
+0

Arf, я не знал этого, спасибо вам большое. – AnthonyR

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