正确的以 .629Z 结尾的字符串的日期格式

Correct dateFormat for String ending .629Z

我从 API "2017-11-25T20:41:00.629Z"

获取这个日期字符串

我正在尝试将其转换为 Date 类型,但我在网上找不到 -> .629Z 表示形式

dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss"

显然这不起作用,当我将字符串转换为日期时得到 nil。我尝试了不同的方法,但是 .... !

有什么想法吗?

谢谢

您可以使用 SSS 为您的日期格式指定毫秒,精度为 3 位数毫秒。

let dateString = "2017-11-25T20:41:00.629Z"
let df = DateFormatter()
df.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZ"
df.locale = Locale(identifier: "en_US_POSIX")
df.date(from: dateString) // "Nov 25, 2017 at 8:41 PM"

在 aaaa loooot 时间后才找到它

"yyyy-MM-dd'T'HH:mm:ss'.'SSSz"

谢谢