datenum to UTC?
10 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
MrKoberec
el 25 de Oct. de 2018
Comentada: Peter Perkins
el 31 de Oct. de 2018
Hi, I have
10-Oct-2013 15:59:00
and I need UTC time
1381435140
Is there any easy way? (time zone GTM-4)
Thanks!
1 comentario
Guillaume
el 25 de Oct. de 2018
That's not UTC time, that's a Unix Time Stamp
It also appears that your input is a datetime not a datenum.
Respuesta aceptada
James Tursa
el 25 de Oct. de 2018
Editada: James Tursa
el 25 de Oct. de 2018
Are you just looking for how to convert from the former to the latter? E.g.,
s = '10-Oct-2013 15:59:00';
unix_m4 = (datenum(s) - datenum('01-Jan-1970'))*86400 + 4*3600;
or
unix_m4 = seconds((datetime(s) - datetime('01-Jan-1970')) + seconds(4*3600));
or
unix_m4 = seconds(datetime(s,'timezone','-4') - datetime('01-Jan-1970','timezone','UTC'));
This result isn't called UTC btw, it is called Unix time:
Más respuestas (1)
jonas
el 25 de Oct. de 2018
Editada: jonas
el 25 de Oct. de 2018
Yes, use datetime instead of datenum.
t = datetime('10-Oct-2013 15:59:00','timezone','-04:00')
t_unix = posixtime(t)
1 comentario
Peter Perkins
el 31 de Oct. de 2018
'-04:00' is a valid time zone, but perhaps a little dangerous. It's a time zone that does not observe4 DST. If the OP is in, say, Boston, then that would give the wrong answer for 10-Nov. Something like 'America/New_York' is probably the right choice.
Ver también
Categorías
Más información sobre Dates and Time en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!