Swift 5 - Dateformatter 未按预期工作

Swift 5 - Dateformatter not working as expected

我在 swift 中使用日期格式化程序,但是 AM/PM 在我的中不起作用代码。

import Foundation
let dtstr = "Tuesday, July 28, 2020 4:15:45 PM"
let formatter = DateFormatter()
formatter.dateFormat = "eeee, MMMM d, yyyy h:m:s a"
let date = formatter.date(from: dtstr)
print(date)

输出是这样的:Optional(2020-07-28 08:15:45 +0000)。但是,它应该是 16:15:45 而不是这个。知道为什么吗?

谢谢!

Date 没有关于时区的信息,默认字符串表示使用格林威治时间。您可以在字符串中看到它的 +0000 部分。

您可以像这样获取您所在时区的描述:

date.description(with: .current)