Shift in datetime relative to epoch

When I use "datetime" to convert seconds since an epoch (like unix time stamp, GPS time) I get on one PC the result shifted by 12 hours:
datetime(0,'convertfrom', 'epochtime','Epoch','1970-01-01 00:00:00')
ans =
datetime
1970-01-01 12:00:00.000
I only get this on one PC with 2018b, but not in 2016b. Also on another computer with 2018b I get what I expect:
ans =
datetime
1970-01-01 00:00:00.000
I am not sure what causes this shift. I do not think it can be related to time zones, it should only be +-1h.

1 Comment

I agree with Cris's suspicion. I'd check that the default format is the same between the two machines. See the Preferences for the Command Window.

Sign in to comment.

 Accepted Answer

Is it displaying in 24 hour format on one computer, and 12 hour format on another?
t = datetime(0,'convertfrom', 'epochtime','Epoch','1970-01-01 00:00:00')
t = datetime
01-Jan-1970
% display in 24 hr format
t.Format = 'dd-MMM-yyyy HH:mm:ss'
t = datetime
01-Jan-1970 00:00:00
% display in 12 hr format
t.Format = 'dd-MMM-yyyy hh:mm:ss'
t = datetime
01-Jan-1970 12:00:00

2 Comments

Likely the datetime display format preference has been changed on the one machine.
You are right. I changed the default time format to include subseconds years ago, and used hh, not HH. Thanks!

Sign in to comment.

More Answers (0)

Categories

Find more on MATLAB in Help Center and File Exchange

Products

Release

R2018b

Tags

Community Treasure Hunt

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

Start Hunting!