Objective-c – Convert seconds to days, minutes, and hours in Obj-c

objective-ctime

In objective-c, how can I convert an integer (representing seconds) to days, minutes, an hours?

Thanks!

Best Solution

In this case, you simply need to divide.

days = num_seconds / (60 * 60 * 24);
num_seconds -= days * (60 * 60 * 24);
hours = num_seconds / (60 * 60);
num_seconds -= hours * (60 * 60);
minutes = num_seconds / 60;

For more sophisticated date calculations, such as the number of days within the ten million seconds after 3pm on January 19th in 1983, you would use the NSCalendar class along with NSDateComponents. Apple's date and time programming guide helps you here.