SWIFT DateFormatter.dateFormat 格式是不是发生了变化?
Posted
技术标签:
【中文标题】SWIFT DateFormatter.dateFormat 格式是不是发生了变化?【英文标题】:Did SWIFT DateFormatter.dateFormat formatting change?SWIFT DateFormatter.dateFormat 格式是否发生了变化? 【发布时间】:2020-02-20 03:33:12 【问题描述】:我最近注意到我的 DateFormatter 不再使用 am/pm 格式。 Swift 最近是否更改了“h”和“a”日期格式符号?会不会是我最近更改但没有看到的另一个设置?
let formatt = DateFormatter()
formatt.dateFormat = "yyyy-MM-dd HH:mm:ss"
let dateDater = formatt.date(from:"2019-03-16 14:00:00")
let formatter = DateFormatter()
formatter.dateFormat = "MM/dd/yy hh:mm a"
let string = formatter.string(from:dateDater!)
print("DateString",string)
结果:DateString 03/16/19 14:00
【问题讨论】:
对我来说它仍然显示 DateString 03/16/19 02:00 PM 您是否更改了设置 > 常规 > 日期和时间 > 24 小时制? 是的,这完全取决于您的日期和时间设置 对于固定日期格式,您需要将日期格式化程序区域设置为 en_US_POSIX 【参考方案1】:除非您阻止它,否则格式化取决于用户区域设置。所以这一切都取决于您的区域和日期时间设置,例如这个:
还有这个:
欲了解更多信息,请阅读https://developer.apple.com/library/archive/qa/qa1480/_index.html
【讨论】:
以上是关于SWIFT DateFormatter.dateFormat 格式是不是发生了变化?的主要内容,如果未能解决你的问题,请参考以下文章