如何使用 iOS 和 Swift 中的 DateFormatter 以 09-Nov-2014 格式格式化日期?

How to format date in 09-Nov-2014 format with DateFormatter in iOS & Swift?

我正在尝试在日期选择器中设置日期格式。我似乎找不到以 09-Nov-2014 格式显示日期的格式。它始终以 Nov 09, 2014 格式显示。我做了很多搜索,但无法确定哪种格式是正确的输入格式。谁能帮我吗?提前Tx.

@objc func datePickerValueChanged(sender:UIDatePicker) {
    let dateFormatter = DateFormatter()
    dateFormatter.dateFormat = "dd-MM-yyyy"
    dateFormatter.dateStyle = DateFormatter.Style.medium
    dateFormatter.timeStyle = DateFormatter.Style.none
    dateOfBirthTextField.text = dateFormatter.string(from: sender.date)
}

不要设置样式。只需设置格式即可。

您使用 dateFormat 或使用 dateStyletimeStyle

请注意,对于您希望向用户显示的日期,最好避免使用 dateFormat,因为您的硬编码格式对于大多数用户来说不是标准格式。

另请注意,MM 显示的是月份。如果您想要缩写的月份名称,请使用 MMM.

你不应该在这里使用 dateStyle & timeStyle 你需要一个特定的日期格式,你的代码应该是这样的,

@objc func datePickerValueChanged(sender:UIDatePicker) {
    let dateFormatter = DateFormatter()
    dateFormatter.dateFormat = "dd-MM-yyyy"
    dateOfBirthTextField.text = dateFormatter.string(from: sender.date)
}

希望对您有所帮助。