【发布时间】:2016-12-02 15:30:26
【问题描述】:
我的 iPhone 设备系统设置为 24 小时制我想获得 12 小时制,即:23:27 获取 11:27 PM。
我试过了:
let today = NSDate()
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "hh:mm a"
let string = dateFormatter.string(from: today as Date) // 23:27
得到23:27 字符串。
我发现了这个:How to get 12 hour format time string when system is set to use 24 hour format
let today = NSDate()
let dateFormatter = DateFormatter()
let dateFormat = DateFormatter.dateFormat(fromTemplate:"hh:mm a", options: 0, locale: NSLocale.current)
dateFormatter.dateFormat = dateFormat
let string = dateFormatter.string(from: today as Date) //23:27 i want 11:27 pm
但它不起作用我仍然得到23:27字符串而不是11:27pm字符串。
谢谢!
编辑:
根据shallowThought的回答不确定Locale是不是这样?
EDIT2 添加这个:
dateFormatter1.locale = Locale(identifier: "en_US_POSIX")
有效。我当前的语言环境是en_CN。
【问题讨论】:
-
我已经运行了你的代码并且在
string变量中有9:34 PM -
@ArtemNovichkov 看我的截图。
-
我很确定这个链接可以解决您的问题。如果没有,请编辑您的问题,说明为什么它没有帮助,如有必要,我们可能会重新提出问题。谢谢。