May*_*sam 3 nsdateformatter swift
我正在尝试转换字符串:
2018-01-18 13:04:42 +0000
类似的东西
January, 18, 2018
使用DateFormatter但失败。我尝试过其他问题(这个,这个和这个)。
这是我的简单代码,打印nil:
let str = "2018-01-18 13:04:42 +0000"
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "MMMM, dd, YYYY"
dateFormatter.locale = Locale.current
let mydate = dateFormatter.date(from: str)
print(mydate)
Run Code Online (Sandbox Code Playgroud)
您DateFormatter期望原始字符串采用以下January, 18, 2018格式。您应该先将其转换为一种格式,然后Date再将其转换为另一种格式。
YYYY另外,在指代普通日历年时不应使用。有关详细信息,请参阅此问题。
let str = "2018-01-18 13:04:42 +0000"
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss Z"
dateFormatter.locale = Locale(identifier: "en_US_POSIX")
guard let date = dateFormatter.date(from: str) else {
return
}
let newDateFormatter = DateFormatter()
newDateFormatter.dateFormat = "MMMM, dd, yyyy"
let newStr = newDateFormatter.string(from: date)
print(newStr) /*January, 18, 2018*/
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7619 次 |
| 最近记录: |