iOS 开发:将 UTC 时间转换为北京时间 (yyyy-MM-dd HH:mm:ss)
要将时间格式从 '2023-10-05T13:42:27+10:00' 转换为北京时间的格式(yyyy-MM-dd HH:mm:ss),可以使用以下代码:
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ssZ"
if let date = dateFormatter.date(from: "2023-10-05T13:42:27+10:00") {
dateFormatter.timeZone = TimeZone(identifier: "Asia/Shanghai")
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
let beijingTime = dateFormatter.string(from: date)
print(beijingTime)
} else {
print("Invalid date format")
}
这段代码首先创建了一个 DateFormatter 对象,并设置了输入时间字符串的格式。然后,使用该格式解析时间字符串并将其转换为 Date 对象。接下来,设置 DateFormatter 的时区为 'Asia/Shanghai'(即北京时间),并将输出的日期格式设置为 'yyyy-MM-dd HH:mm:ss'。最后,使用 dateFormatter.string(from:) 方法将 Date 对象转换为北京时间的字符串表示形式。
运行上述代码,输出结果将为:
2023-10-05 13:42:27
请注意,代码中的时区标识符 'Asia/Shanghai' 是根据需要设置的,如果您的时区不是北京时间,请相应地更改时区标识符。
原文地址: https://www.cveoy.top/t/topic/o792 著作权归作者所有。请勿转载和采集!