如何在Swift中仅在下午12:00之前获取时间
如何识别如何在Swift中仅在下午12:00之前获取时间,swift,nsdateformatter,Swift,Nsdateformatter,如何识别temp是否在12:00 PM之前 let temp = dateFormatter.date(from: 2017-10-10 23:34:00) 最好的选择是使用每个用户在自己的设备中定义的日期格式化程序和日历。在这种情况下,您可以这样显示日期: let temp1 = dateFormatter.date(from: 2017-10-10 23:34:00) dateFormatter.dateFormat = "a" dateFormatter.amSymbol = "AM"
temp
是否在12:00 PM之前
let temp = dateFormatter.date(from: 2017-10-10 23:34:00)
最好的选择是使用每个用户在自己的设备中定义的日期格式化程序
和日历
。在这种情况下,您可以这样显示日期:
let temp1 = dateFormatter.date(from: 2017-10-10 23:34:00)
dateFormatter.dateFormat = "a"
dateFormatter.amSymbol = "AM"
dateFormatter.pmSymbol = "PM"
let temp2 = dateFormatter.string(from: temp1)
if(temp2.contains("AM")){
// your function
}else{
// your function
}
您只需执行以下操作:
let nowTime = Date()
let dateFormatter = DateFormatter()
dateFormatter.timeStyle = .medium
dateFormatter.calendar = Calendar.current
let time = dateFormatter.string(from: nowTime)
print(time) // output -- 12:14:32 PM
检查hour>=12
是否为中午12点或更晚。如果您只需要使用“a”作为格式,那么如果a等于a,我如何执行函数。mI表示如果小时在{0,1,2,3,4,5,6,7,8,9,10,11}范围内,您不需要24小时时钟中的“hh:mm”,而{12,13,14,15,16,17,18,19,20,21,22,23}可以被认为是PM.小菜一碟。您可以将其进一步缩短为Calendar.current.component(.hour,from:date)
,但这是正确的答案-没有理由重新设置日期格式并在输出中搜索某些内容。
let hour = Calendar.current.component(.hour, from: date)