Swift 3更改date格式
我想要DD.MM.YYYY HH:mm:ss作为一个string得到我的date。
我使用以下扩展名:
extension Date { var localTime: String { return description(with: Locale.current) } }
和下面的代码时,我的datePicker更改:
@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) }
我究竟做错了什么?
你的代码是完全错误的。 只要做到以下几点:
@IBAction func datePickerChanged(_ sender: UIDatePicker) { let formatter = DateFormatter() formatter.dateFormat = "dd.MM.yyyy HH:mm" dateLabel.text = formatter.string(from: sender.date) }
这将把dateselect器的selectdate转换为格式dd.MM.yyyy HH:mm
在本地时间的string。
切勿使用description
方法将任何对象转换为用户提供的值。