Objective-C timespan

Sai*_*ino 3 datetime timespan objective-c nsdate

在C#中,如果我想将字符串解析为日期和时间跨度,我会做类似以下的事情:

String input = "08:00";
DateTime time;
if (!DateTime.TryParse(input, out time))
{
    // invalid input
    return;
}

TimeSpan timeSpan = new TimeSpan(time.Hour, time.Minute, time.Second);
Run Code Online (Sandbox Code Playgroud)

我的Google-Fu在寻找将其转换为Objective-C的方法方面一直不太理想.

有什么建议?

Qui*_*lor 7

Cocoa日期和时间编程指南可能有助于找到最符合您需求的方法.我敢打赌,NSDateComponents会引起特别的兴趣 - 您可以从该-[NSCalendar components:fromDate:]方法中获取此类的实例.

至于正从一个字符串的日期,一个方法,你可以尝试使用NSDateFormatter,它具有类似的方法-dateFromString:,并-stringFromDate:到的NSString和的NSDate之间转换.您可以使用-setDateFormat:指定用于解析的格式字符串.获得NSDate对象后,您还可以使用其中一种-timeIntervalSince...方法获取NSTimeInterval,它是一个以秒为单位的双精度值.