1-hour offset in time string conversion
13 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Dennis
el 24 de Oct. de 2014
Respondida: Dennis
el 3 de Nov. de 2014
Hi there, I'm having trouble in converting string to datenum values. Somehow, there will be an offset of one hour when converting back to datestr. So, here is my example:
>> timestr = '1986-03-13T11:59:58.000Z';
>> test = datenum(timestr,'yyyy-mm-ddTHH:MM:SS.000Z')
test =
7.2544e+05
>> datestr(test,'yyyy-mm-ddTHH:MM:SS')
ans =
1986-03-13T12:59:58
To me, this seems pretty weird. I might be missing something very simple, though. I'd be glad if any of you could help me! Thanks
Dennis
1 comentario
Star Strider
el 24 de Oct. de 2014
I suggest you report this as a bug, specifically because in R2014b I get an even weirder result from running your code:
1986-03-13T04:59:58
a -19 hour error!
Respuesta aceptada
Peter Perkins
el 31 de Oct. de 2014
Dennis, I'm guessing you're somewhere in Europe, and that Star Strider is somewhere in the western US. As in, UTC+1 and UTC-7.
Reason is, the Z in your string is being treated as "Zulu", i.e., UTC, and the datenum is converted to your local time zone. Z has never (far as I know) been documented as something you could put in a date format for datestr. Prior to R2013a, this threw an error.
I'm not sure what you need to do with a date string like this. You may simply want to ignore the Z and preserve the time stamp itself. If they all have a trailing 'Z', I recommend just stripping that off.
If you have access to R2014b, you might consider using the new date and time features. For example:
>> timestr = '1986-03-13T11:59:58.000Z'
timestr =
1986-03-13T11:59:58.000Z
>> datetime(timestr,'Format','yyyy-MM-dd''T''HH:mm:ss.SSSXXX','TimeZone','UTC')
ans =
1986-03-13T11:59:58.000Z
>> datetime(timestr,'Format','yyyy-MM-dd''T''HH:mm:ss.SSSXXX','TimeZone','Europe/Paris')
ans =
1986-03-13T12:59:58.000+01:00
>> datetime(timestr,'Format','yyyy-MM-dd''T''HH:mm:ss.SSS''Z''')
ans =
1986-03-13T11:59:58.000Z
Hope this helps.
0 comentarios
Más respuestas (1)
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!