如何以12小时格式获取当前时间?
问题描述:
我想获得12小时格式的当前时间。如果时间是18:36,我想要格式,那么它应该是下午06:35。为此,我使用了下面的代码,但它只是不给我需要的格式。我得到这样的格式。如何以12小时格式获取当前时间?
let date = Date()
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "h:mm a"
let date22 = dateFormatter.string(from: date)
答
let dateAsString = "6:35 PM"
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "hh:mm a"
let date = dateFormatter.dateFromString(dateAsString)
dateFormatter.dateFormat = "HH:mm"
let date24 = dateFormatter.stringFromDate(date!)
+1
可能值得一提的是,OP想要的是带有前导0的小时格式,而且这个答案(虽然完全正确)不包括前导0.简单的修复,但只是添加第二个“h”,以便格式字符串是“hh:mm a”。 –
+0
是的,谢谢,只是修好了。 – DeyaEldeen
答
SWIFT 2:
let date = NSDate() // return current time and date
let dateFormatter= NSDateFormatter()
dateFormatter.dateFormat = "hh:mm a" // for specifying the change to format hour:minute am/pm.
let dateInString = dateFormatter.stringFromDate(date) // provide current time in string formatted in 06:35 PM if current time is 18:35
print(dateInString)
SWIFT 3: 只需更改行:
dateFormatter.dateFormat = "h:mm a"
到dateFormatter.dateFormat = "hh:mm a"
在你的代码
此外,这个网站是一个伟大的找出你需要的东西:http://nsdateformatter.com/ – Losiowaty
你的问题不清楚。什么是原始时间输入?一个'String'或一个'Date'? – rmaddy