Converting text to dates with datenum. A problem concerning milliseconds.

3 views (last 30 days)
Hi!
I'm trying to convert a large cell of text (containing about 13 million rows) with date information into a date or numbers format.
The text looks like this
'20160405 16:00:00:106'
I'm trying
% datetime(T,'InputFormat','yyyyMMdd HH:mm:ss:SSS')
but it keeps cutting the milliseconds.
05-Apr-2016 16:00:00
I've done some googling and searched here but I couldn't come up with a solution yet. Thanks for the help!

Accepted Answer

Steven Lord
Steven Lord on 13 Jun 2018
Build the datetime.
T = '20160405 16:00:00:106'
fmt = 'yyyyMMdd HH:mm:ss:SSS';
dt = datetime(T, 'InputFormat', fmt)
What display format is dt using?
dt.Format
Make it use the same format as T was in.
dt.Format = fmt
  2 Comments
Steven Lord
Steven Lord on 14 Jun 2018
If you wanted to do this all in one line, you could set the Format in the same command in which you created the datetime.
dt = datetime(T, 'InputFormat', fmt, 'Format', fmt)

Sign in to comment.

More Answers (0)

Categories

Find more on Dates and Time in Help Center and File Exchange

Tags

Products


Release

R2016a

Community Treasure Hunt

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

Start Hunting!