Node.js .toISOString() 到 Swift DateFormatter()
Node.js .toISOString() to Swift DateFormatter()
我正在使用 .toISOString()
which returns 2018-09-30T10:36:39.165Z
从服务器获取日期和时间。
然后我想将其转换为 Swift 中的 Date()
,以便我可以通过增加一个小时来操纵它。我发现一个网站说 .toISOString()
的格式是 YYYY-MM-DDTHH:mm:ss.sssZ
.
然后我设置格式 swift DateFormatter()
:
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "YYYY-MM-DDTHH:mm:ss.sssZ"
然而,这似乎不起作用,因为当我尝试执行转换时它失败了:
guard let date = dateFormatter.date(from: time) else {
fatalError("ERROR: Date conversion failed due to mismatched format.")
}
我认为这是我使用的格式字符串的问题,但我找不到它应该是什么,有什么想法吗?
将 T
放在 '
之间:
let time = "2018-09-30T10:36:39.165Z"
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZ"
let date = dateFormatter.date(from: time)
我正在使用 .toISOString()
which returns 2018-09-30T10:36:39.165Z
从服务器获取日期和时间。
然后我想将其转换为 Swift 中的 Date()
,以便我可以通过增加一个小时来操纵它。我发现一个网站说 .toISOString()
的格式是 YYYY-MM-DDTHH:mm:ss.sssZ
.
然后我设置格式 swift DateFormatter()
:
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "YYYY-MM-DDTHH:mm:ss.sssZ"
然而,这似乎不起作用,因为当我尝试执行转换时它失败了:
guard let date = dateFormatter.date(from: time) else {
fatalError("ERROR: Date conversion failed due to mismatched format.")
}
我认为这是我使用的格式字符串的问题,但我找不到它应该是什么,有什么想法吗?
将 T
放在 '
之间:
let time = "2018-09-30T10:36:39.165Z"
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZ"
let date = dateFormatter.date(from: time)