Swift 3 formatting de date de cambio

Quiero get mi date en DD.MM.YYYY HH: mm: ss como una cadena.

Yo uso la siguiente extensión:

extension Date { var localTime: String { return description(with: Locale.current) } } 

y el siguiente código cuando cambia mi date:

 @IBAction func datePickerChanged(_ sender: UIDatePicker) { dateLabel.text = datePicker.date.localTime let formatter = DateFormatter() formatter.dateFormat = "dd.MM.yyyy hh:mm" let TestDateTime = formatter.date(from: datePicker.date.localTime) } 

¿Qué estoy haciendo mal?

Tu código está completamente equivocado. Simplemente haga lo siguiente:

 @IBAction func datePickerChanged(_ sender: UIDatePicker) { let formatter = DateFormatter() formatter.dateFormat = "dd.MM.yyyy HH:mm" dateLabel.text = formatter.string(from: sender.date) } 

Esto convertirá la date elegida del selector de date en una cadena en el formatting dd.MM.yyyy HH:mm en hora local.

Nunca use el método de description para convertir cualquier object a un valor presentado por el usuario.