iphone - 比较两次

时间:2010-07-15 05:57:34

标签: iphone

我如何在HH中给出两次:mm:ss格式比较然后确定哪个是更晚的时间。

12:00:00& 14:00:00

我如何确定14:00:00是晚些时候

3 个答案:

答案 0 :(得分:1)

查看NSDateFormatterinitWithDateFormat:allowNaturalLanguage:dateWithString),将输入字符串转换为NSDate个实例。然后在生成的earlierDate: s。

上使用compare:NSDate等方法

答案 1 :(得分:1)

如果你在相同的时区内工作(是的,这会增加复杂性),那么通常最简单的方法是将这些字符串转换为NSDate对象,然后直接比较它们。有关在http://developer.apple.com/mac/library/documentation/Cocoa/Conceptual/DatesAndTimes/DatesAndTimes.html

上转换为NSDate和NSCalendar对象的详细信息

Converting a string to an NSDate

,“如何做到这一点”还有另一个问题

答案 2 :(得分:1)

要添加到之前的答案中,如果您实际上有两个带有@“12:00:00”和@“14:00:00”的NSStrings,您可以逃脱:

NSString *timeA, *timeB; // <-- these are your two times in the format 
    // HH:mm:ss where HH is 24h format (no am/pm) and midnight is 00 
    // and you always have two digits (i.e. 12:3:50 for 3m50s past 12 is 
    // always shown as 12:03:50) ...
BOOL timeAIsSooner = [[[timeA componentsSeparatedByString:@":"] 
        componentsJoinedByString:@""] intValue]
    < [[[timeB componentsSeparatedByString:@":"] 
        componentsJoinedByString:@""] intValue];