快速将日期字符串转换为日期

时间:2019-05-29 06:27:28

标签: swift dateformatter

我从服务器端得到了一个日期字符串,即Tue, 28 May 2019 13:24:06 +0000。我尝试执行以下操作:

let dateFormatter = DateFormatter()
dateFormatter.dateStyle = .full
let date = dateFormatter.date(from: "Tue, 28 May 2019 13:24:06 +0000")

结果为 nil

如何将这样的字符串转换为Date

1 个答案:

答案 0 :(得分:5)

您需要设置一个特定的dateFormat。然后,将日期格式器的语言环境设置为en_US_POSIX

let dateFormatter = DateFormatter()
dateFormatter.locale = Locale(identifier: "en_US_POSIX")
dateFormatter.dateFormat = "EEE, dd MMM yyyy HH:mm:ss Z"
let date = dateFormatter.date(from: "Tue, 28 May 2019 13:24:06 +0000")

有关链接的链接,请参见dateFormat的文档,这些链接为您提供了所有格式说明符的含义的完整描述。

请记住,将日期转换为字符串以显示给用户时,使用日期和时间样式是最佳解决方案。但是要将字符串解析为日期,请使用dateFormat