How to include milliseconds when converting datestr to datetime

I am trying to convert a date string of the form 20-04-2018 09:37:46.657 ('dd-mm-yyyy HH:MM:SS.FFF') to a datetime, but I cannot get the right input format. I have a long time series of 20 measurements pr seconds, so the milliseconds are essential. Could I change the format in one or both of the functions to get the right result?
Here is my code:
posix_timestamp = 1.524216883857000e+09;
str = datestr(posix_timestamp/86400 + datenum('1/1/1970'), 'dd-mm-yyyy HH:MM:SS.FFF');
datetime(str, 'InputFormat', 'dd-mm-yyyy HH:MM:SS.FFF' );

 采纳的回答

posix_timestamp = 1.524216883857000e+09;
datetime(posix_timestamp,'convertfrom','posixtime', 'Format', 'yyyy-MM-dd HH:mm:ss.SSS')

更多回答(0 个)

类别

在 帮助中心 和 File Exchange 中查找有关 Dates and Time 的更多信息

产品

版本

R2016b

Community Treasure Hunt

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

Start Hunting!

Translated by