2015-10-09 2 views
1

ЦЕЛЬ: Я хочу, чтобы моя строка была отформатирована и помещена внутри метки.Строка в NSDate наоборот, затем в UILabel

Текущий код:

let dateString   = "2015-10-09 17:41:14" 
let dateFormatter  = NSDateFormatter() 
dateFormatter.dateFormat = "MMMM d, yyyy | hh:mm a" 
let date     = dateFormatter.dateFromString(dateString) 
//FOUND NIL HERE 
let NewString   = dateFormatter.stringFromDate(date!) 
Date.text    = NewString 

Код выше работает, если я NSDate() но если я использую свою собственную строку?

ответ

2

Вы используете неправильный формат даты, чтобы преобразовать строку в дату, и из-за этого она возвращает нулевую дату. Сначала вам нужно использовать точный формат даты для преобразования строки в дату, а затем установить стиль форматирования даты, чтобы вернуть его в виде строки в желаемом формате.

Измените ваш код:

let dateString   = "2015-10-09 17:41:14" 
let dateFormatter  = NSDateFormatter() 
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss" 
let date     = dateFormatter.dateFromString(dateString) 
dateFormatter.dateFormat = "MMMM d, yyyy | hh:mm a" 
let resultString   = dateFormatter.stringFromDate(date!) 
print(resultString) // October 9, 2015 | 05:41 PM 
+0

работал, спасибо! Я соглашусь на это как лучший ответ за несколько минут, когда stackoverflow позволяет мне – SlopTonio

+0

@SlopTonio: рад услышать, что это сработало. Счастливое кодирование !!! –

+0

Столица важна (MMMM). Если вы пропустили это, вы получите нуль – BootMaker

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