早上好,
我有iOS 9和Swift 2的应用程序
目前,我的应用程序是用德语。
我的目标是:我会用英语翻译。
这很好用,但我的时间格式有问题。 目前,我使用这样的24时格式:
09:00 Uhr
17:00 Uhr
23:00 Uhr
...
有没有一种快速的方法可以用英语12h格式转换它,如下所示:
09:00 Uhr => 09:00 AM
17:00 Uhr => 05:00 PM
23:00 Uhr => 11:00 PM
...
非常感谢。
答案 0 :(得分:0)
试试这个,它应该完全符合你的要求:
let date = NSDate()
let dateFormetter = NSDateFormatter()
dateFormetter.dateFormat = "h:mm a"
dateFormetter.timeZone = NSTimeZone(name: "UTC")
dateFormetter.locale = NSLocale(localeIdentifier: "en_GB")
let timeString = dateFormetter.stringFromDate(date) // 7:34 a.m.
答案 1 :(得分:0)
您可以使用NSDateFormatter修改
let formatter = NSDateFormatter()
formatter.dateFormat = "HH:mm"
let date = formatter.dateFromString(yourString)
formatter.dateFormat = "hh:mm AA"
let result = formatter.stringFromDate(date)
你我可能需要摆脱" Uhr"之前(你可以替换" Uhr"与"")
答案 2 :(得分:0)
根据其他两个答案,使用NSDateFormatter
:
let dateFormatIn = NSDateFormatter()
let dateFormatOut = NSDateFormatter()
dateFormatIn.dateFormat = "HH:mm 'Uhr'"
dateFormatOut.dateFormat = "hh:mm a"
dateFormatOut.locale = NSLocale(localeIdentifier: "en_US")
var str = "07:00 Uhr"
func convertTimeRepresentation(str: String) -> String? {
if let n = dateFormatIn.dateFromString(str) {
return dateFormatOut.stringFromDate(n)
}
return nil
}
convertTimeRepresentation(str)