私のアプリでは、JSONの応答から来る特定の日付から日、時間、分、秒を取得する必要があります。残りの日、時、分、秒を計算するには?
"date_time" = "2017-01-31 08:30:00";
と日のように、残りを計算する必要があります:6時間:18分:24秒:30
終了日が今日の日付になります以下は、私が取得していた日付と時刻です。私はコードの下で試してみましたが、マイナスの日を与えています(UTCのタイムゾーンがかかると思います)。
NSString *start = [[self.eventsArray valueForKey:@"date_time"]objectAtIndex:0];
NSDateFormatter *date = [[NSDateFormatter alloc] init];
[date setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
NSString *end = [date stringFromDate:[NSDate date]];
NSDateFormatter *f = [[NSDateFormatter alloc] init];
[f setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
NSDate *startDate = [f dateFromString:start];
NSDate *endDate = [f dateFromString:end];
NSCalendar *gregorianCalendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSCalendarIdentifierGregorian];
NSDateComponents *components = [gregorianCalendar components:NSCalendarUnitDay
fromDate:startDate
toDate:endDate
options:0];
NSLog(@"day : %ld H: %ld M : %ld S:%ld", [components day], (long)[components hour],(long)[components minute],(long)[components second]);
誰か助けてください。
あなたの日付を渡したstartDateとendDateにの価値dateFromStringさ:開始と終了が今日の日付になります。 – Nij
NSDateComponentsFormatterを見てください。 – vadian