Objective-C временной интервал - PullRequest
3 голосов
/ 01 августа 2009

В 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);

Мой Google-Fu был менее чем желателен в поиске способа конвертировать это в Objective-C.

Есть предложения?

1 Ответ

7 голосов
/ 01 августа 2009

Руководство по программированию даты и времени для какао , вероятно, поможет найти подход, который наилучшим образом соответствует вашим потребностям. Держу пари, что NSDateComponents будет представлять особый интерес - вы можете получить экземпляр этого класса из метода -[NSCalendar components:fromDate:].

Что касается получения даты из строки, вы можете попробовать использовать один подход NSDateFormatter , который имеет методы типа -dateFromString: и -stringFromDate: для преобразования между представлениями NSString и NSDate. Вы можете использовать -setDateFormat:, чтобы указать строку формата, используемую для разбора. Если у вас есть объект NSDate , вы также можете использовать один из его методов -timeIntervalSince..., чтобы получить NSTimeInterval , представляющее собой двойное значение, измеряемое в секундах.

...