Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Convert milliseconds to NSDate

I have this "1273636800000" and I want to convert it to this format "Wed Mar 03 2010 00:00:00 GMT-0500 (EST)"

I need to convert this milliseconds to NSDate format.

I tried this

NSDate *tr = [NSDate dateWithTimeIntervalSince1970:1273636800000];

and

NSDate *tr = [NSDate dateWithTimeIntervalSinceReferenceDate:1273636800000];

and

NSDate *tr = [NSDate dateWithTimeIntervalSinceNow:1273636800000];

But I can't get it to work, anyone had a similar problem and found the solution

like image 753
vivianaranha Avatar asked Apr 29 '10 22:04

vivianaranha


2 Answers

These functions (dateWithTimeIntervalSince1970, dateWithTimeIntervalSinceReferenceDate, dateWithTimeIntervalSinceNow) accept parameter in seconds.

NSDate *date = [NSDate dateWithTimeIntervalSince1970:(ms / 1000.0)];

You should pass 1273636800.000

NSDate *date = [NSDate dateWithTimeIntervalSince1970:(1273636800 / 1000.0)];
like image 127
Victor Avatar answered Sep 25 '22 13:09

Victor


Divide by 1000 to get millis in seconds, that's what you want.

like image 20
tisaksen Avatar answered Sep 21 '22 13:09

tisaksen