Вот настройка, у меня есть канал JSON, который я использую, и я хочу найти разницу между двумя конкретными датами: posted_date
и planned_expiration_date
. Они в нечетном формате, поэтому я подумал, что могу урезать их до даты. Я мог бы затем использовать NSTimeInterval
, чтобы найти разницу в секундах.Проблемы с датами форматирования
// Time Interval Left
NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
NSString *startDate = [firstPerson objectForKey:@"posted_date"];
NSString *endDate = [firstPerson objectForKey:@"planned_expiration_date"];
//Ammend the strings to YYYY-MM-DD
[formatter setDateFormat:@"yyyy-mm-dd"];
int newlength = 9;
NSDate *startDateAmmended =[formatter dateFromString:[startDate substringFromIndex:newlength]];
NSDate *endDateAmmended = [formatter dateFromString:[endDate substringFromIndex:newlength]];
Вот немного, о котором я не слишком уверен. Дата выглядит примерно так: "2013-06-07T13:40:01Z"
прямо из фида. Я не знаю, как обращаться с символами T и Z в методе форматирования даты, поэтому я усекаю строку с помощью substringFromIndex
, чтобы сделать ее 10 символов, а затем попытался выполнить следующий код.
//Difference in Date
NSTimeInterval *startDifference = [startDateAmmended timeIntervalSinceNow];
NSTimeInterval *endDifference = [endDateAmmended timeIntervalSinceNow];
NSTimeInterval timeDifferenceInSeconds = startDifference - endDifference;
Я получаю следующее сообщение об ошибке, .../JSONParser/ViewController.m:52:21: Initializing 'NSTimeInterval *' (aka 'double *') with an expression of incompatible type 'NSTimeInterval' (aka 'double')
на первых двух вызовов NSTimeInterval
.
Уверен, что я ошибаюсь в нескольких местах, и я уверен, что это не самый простой способ сделать это. Может ли кто-нибудь порекомендовать, как я исправлю эту проблему или более простой способ получить разницу между датами?
Может быть, это может помочь вам: http://stackoverflow.com/questions/ 6742771/как к высчитывает-разница между ними-две даты-без использования каких-либо-готовый-библиотека-фу –