Система моего устройства iPhone была настроена на 24-часовой формат. Я хочу получить 12-часовой формат, то есть: 23:27 получить 23:27.
Я попытался:
let today = NSDate()
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "hh:mm a"
let string = dateFormatter.string(from: today as Date) // 23:27
получил 23:27
строку.
Я нашел это: Как получить строку времени в 12-часовом формате, если система настроена на использование 24-часового формата
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
.
Спасибо!
EDIT: Согласно ответу shallowThought
, вы не уверены, что Locale
имеет место?
EDIT2 Добавьте это:
dateFormatter1.locale = Locale(identifier: "en_US_POSIX")
работает. И моя текущая локаль en_CN
.