【发布时间】:2019-03-23 17:15:51
【问题描述】:
我从 API 得到以下日期。
{
"createdDate": "2019-03-22T15:53:06.663Z"
}
我想对此进行解码并将其存储为 Date 类型。
但我的JSONDecoder 无法解码。
我尝试用
来扩展它extension DateFormatter {
static let iso8601Full: DateFormatter = {
let formatter = DateFormatter()
formatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZ"
formatter.calendar = Calendar(identifier: .iso8601)
formatter.timeZone = TimeZone(secondsFromGMT: 0)
formatter.locale = Locale(identifier: "en_US_POSIX")
return formatter
}()
}
然后使用decoder.dateDecodingStrategy = .formatted(DateFormatter.iso8601Full) 但这不起作用
【问题讨论】:
-
你得到了什么输出?
-
什么不起作用?实际上
JSONDecoder对于具有一个键值对的字典来说有点矫枉过正。 -
我只包括相关的道具,还有很多。
-
日期格式化程序对于给定的 ISO8601 字符串是正确的。
标签: ios swift nsdateformatter codable jsondecoder