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

3 Ansichten (letzte 30 Tage)
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!

Akzeptierte Antwort

Steven Lord
Steven Lord am 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 Kommentare
Ben
Ben am 13 Jun. 2018
Yep. This is it. Thanks! Simple stuff :)
Steven Lord
Steven Lord am 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)

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Dates and Time finden Sie in Help Center und File Exchange

Tags

Produkte


Version

R2016a

Community Treasure Hunt

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

Start Hunting!

Translated by