从日期字符串设置日期选择日期的正确方法是什么
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "dd/MM/YY"
let convertedStartDate = dateFormatter.dateFromString("1/3/15")
startDatePicker.date = convertedStartDate!
Run Code Online (Sandbox Code Playgroud)
这不起作用,convertedStartDate = nil
**你必须使用"yy"而不是"YY"
let formatter = DateFormatter()
formatter.dateFormat = "d/M/yy"
formatter.locale = Locale(identifier: "en_US_POSIX")
if let startDate = formatter.date(from: "1/3/15") {
print(startDate) // 2015-03-01 03:00:00 +0000
}
Run Code Online (Sandbox Code Playgroud)
您还可以创建一个扩展来为您处理,如下所示:
extension String {
func toDateFormatted(with string: String)-> Date? {
let formatter = DateFormatter()
formatter.dateFormat = "d/M/yy"
formatter.locale = Locale(identifier: "en_US_POSIX")
formatter.dateFormat = string
return formatter.date(from: self)
}
}
let string = "1/3/15"
if let date = string.toDateFormatted(with: "d/M/yy") {
print(date) // 2015-03-01 03:00:00 +0000
}
Run Code Online (Sandbox Code Playgroud)
如果您需要参考资料来帮助您设置日期格式,可以使用以下内容:

| 归档时间: |
|
| 查看次数: |
6256 次 |
| 最近记录: |