-1
我有兩次都在字符串格式:比較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
我編輯它檢查值 –