比较AM和PM(NSDate的)
问题描述:
我有两次都在字符串格式:比较AM和PM(NSDate的)
timeOne = "12:58 AM"
timeTwo = "1:05 PM"
我将它们转换成NSDate的这样
func convertTime(tim: String) -> NSDate{
let strDate = tim
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "HH:mm a"
//converts into NSDate so we can find the time remaining
return (dateFormatter.dateFromString(strDate))!
}
let tOne = convertTime(timeOne)
let tTwo = convertTime(timeTwo)
转换语调和TTWO输出我
tOne = 2000-01-01 00:58:00 +0000
tTwo = 2000-01-01 12:05:00 +0000
我比较两次,但我希望它返回7分钟,而即时获得'667' 鳕鱼E要比较的是:
let calendar = NSCalendar.currentCalendar()
let components = calendar.components(.Minute, fromDate: tOne, toDate: tTwo, options: [])
print(components)
此打印出
667
但是它的工作原理,如果这两个时间是相同的上午或下午 什么,我的意思是,让说
tOne = "1:06 PM"
tTwo = "1:15 PM"
运行比较代码就成功输出“9”
你的例子中'tOne'和'tTwo'的价值是什么? – Larme
我觉得你在使用a.m.时错了 - 上午12:58只有00:58才有意义,而不是12:58,这将是下午。 = *发布子午线* - 即“中午之后”。因此,时间之间为11小时7分钟= 667分钟。 – Grimxn
我编辑它检查值 –