2016-12-20 2 views
2

У меня есть строка, как «22:02:20» и нужно отформатировать его «10:02:00» У меня есть попробовать это:Как изменить формат времени из строки в Swift 3,0

let time = "22:02:00" 

    let dateFormatter = DateFormatter() 
    dateFormatter.dateFormat = "HH:mm:ss" 


    let calendar = Calendar.current 
    let unitFlags = Set<Calendar.Component>([.hour, .minute]) 

    staticHoraInicio = calendar.dateComponents(unitFlags, from: dateFormatter.date(from: time)) 

но я получаю 22 и 2, как я могу получить 10 и 02. Кроме того, я стараюсь:

let horaF = dateFormatter.date(from: time!) 

, но я получаю что-то вроде «2000-01-02 03:00:00 +0000», ¿есть способ форматировать только временную строку без даты?

Мне нужно это, чтобы сохранить время начала и окончания времени, поступающее из БД, сравнить его с текущим временем, чтобы получить, если оно находится между ними, некоторый пример о том, как это сделать ???

ответ

7
let time = "22:02:00" 

let dateFormatter = DateFormatter() 

dateFormatter.dateFormat = "HH:mm:ss" 

var fullDate = dateFormatter.date(from: time) 

dateFormatter.dateFormat = "hh:mm:ss a" 

var time2 = dateFormatter.string(from: fullDate!) 
+0

dateFormatter.dateFormat = "чч: мм: сс" вар time2 = dateFormatter.string (от: fullDate) –

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