首页 > 解决方案 > 无法转换 UTC 时间

问题描述

我正在从服务器获取字符串格式的 UTC 时间。"2019-12-18T10:58:40Z" 现在我想将其转换为本地时间。为此,我提到了这个链接。但它不工作..

我想要实现的是将UTC时间转换为本地时间并根据该时间设置一个计时器。

这是我试过的..

var utcTime = "\(json["expirationDate"]!)"

self.dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"
let date = self.dateFormatter.date(from: utcTime)
let utcDate = date?.toGlobalTime()
let localDate = utcDate?.toLocalTime()

但我得到的日期为零值..

标签: iosswiftutc

解决方案


您必须将此格式从“yyyy-MM-dd'T'HH:mm:ss.SSS'Z'”更改为“yyyy-MM-dd'T'HH:mm:ss'Z'”**你有至

let utcTime = "2019-12-18T10:58:40Z"
let dateFormatter = DateFormatter.init()
dateFormatter.timeZone = TimeZone(abbreviation: "UTC")!
dateFormatter.locale = Locale(identifier: "en_US_POSIX")
dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss'Z'"
let date = dateFormatter.date(from: utcTime)
print(date)

推荐阅读