How to calculate time in hours between two dates in iOS

The NSDate function timeIntervalSinceDate: will give you the difference of two dates in seconds.

 NSDate* date1 = someDate;
 NSDate* date2 = someOtherDate;
 NSTimeInterval distanceBetweenDates = [date1 timeIntervalSinceDate:date2];
 double secondsInAnHour = 3600;
 NSInteger hoursBetweenDates = distanceBetweenDates / secondsInAnHour;

See, the apple reference library http://developer.apple.com/library/mac/navigation/
or if you are using Xcode just select help/documentation from the menu.

See: how-to-convert-an-nstimeinterval-seconds-into-minutes

–edit: See ÐąrέÐέvil’s answer below for correctly handling daylight savings/leap seconds

Leave a Comment