我有一个时区作为String
类型,我想在 Swift 4 中获取这个时区的日期(格式为 dd:mm:yyyy
)和时间(格式为 hh:mm:ss
)。我该怎么做?
看过日历库,但不明白如何查看它来解决我的问题。
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "dd:MM:yyy hh:mm:ss"
let timeZone = TimeZone(identifier: "Europe/Amsterdam")
dateFormatter.timeZone = timeZone
dateFormatter.string(from: Date())
虽然,我认为格式"dd-MM-yyyy HH:mm:ss"
似乎更正确。话虽如此;在分析自定义日期格式时,应使用设置dateFormat
来设置格式。设置要向用户显示的日期的格式时,应使用用户期望的日期格式(在默认系统区域设置中)。为此,您应该使用 dateStyle
和 timeStyle
:
dateFormatter.dateStyle = .medium
print(dateFormatter.string(from: Date())) // prints "Oct 28, 2017"
dateFormatter.dateStyle = .medium
dateFormatter.timeStyle = .medium
print(dateFormatter.string(from: Date())) // prints "Oct 28, 2017 Oct 28, 2017 at 11:19:13 PM"