Filter löschen
Filter löschen

Inverse of posix time

17 Ansichten (letzte 30 Tage)
NoNo
NoNo am 28 Sep. 2015
Kommentiert: Peter Perkins am 28 Jul. 2020
Hello,
O was wondering if there is a function in matlab that does the opposite as posix time. Indeed, I have a UNIX time (1443002431.224) and I want to convert it into a date with hour, minute and second.
How can I do it ? Does it exist a function to do this ?
Thank you very much for your help !!
NoNo

Akzeptierte Antwort

Guillaume
Guillaume am 28 Sep. 2015
d = datetime(1443002431.224, 'ConvertFrom', 'posixtime')
  4 Kommentare
Haris K.
Haris K. am 16 Mai 2020
@Peter Perkins if you format the output of the resulted datetime as 'dd-MMM-yyyy HH:mm:ss.SSS' both:
unix_t = 1443002431.224;
datetime(unix_t, 'ConvertFrom', 'posixtime')
datetime(round(1000*unix_t),'ConvertFrom','epochtime',"TicksPerSecond",1000)
return the same output, i.e. 23-Sep-2015 10:00:31.224. So what is the round-off introduced?
Peter Perkins
Peter Perkins am 28 Jul. 2020
Well, I misspoke, sort of.
The round-off is introduced in unix_t = 1443002431.224. That is not a value that is representable exactly in floating point. However, because of the extremely smart people who created IEEE754 etc. way back when, it turns out that 1443002431.224*1000 is exactly 1443002431224. And that multiplication happens inside datetime, without you needing to do it as in my code. That's what saves this.
I think that should be true for anything specified to milliseconds.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (2)

Emre Güngör
Emre Güngör am 29 Nov. 2018
You need 2018 version
  1 Kommentar
Steven Lord
Steven Lord am 29 Nov. 2018
Not true. datetime was introduced in release R2014b and the documentation for that function in that release lists the 'ConvertFrom', 'posixtime' syntax. When I run Guillaume's code in release R2014b I receive the same answer as if I created a datetime for January 1st, 1970 and added that many seconds to it. Both those answers matched the results I received for those same computations in release R2018b and the result I received using an online UNIX epoch converter.

Melden Sie sich an, um zu kommentieren.


Anh Anh
Anh Anh am 10 Dez. 2019
  1 Kommentar
Rik
Rik am 10 Dez. 2019
(rescued from spam filter)
Even though this isn't spam, it isn't a real answer either. There are Matlab tools available that do this, so it is not necessary to use an external website to do this conversion.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Dates and Time finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by