MATLAB Answers

trouble using datetime format in textscan

5 views (last 30 days)
Erik on 20 Jul 2021
Commented: Erik on 20 Jul 2021
this datetime format works
datetime('2021-05-01 06:10:00','inputFormat','yyyy-MM-dd HH:mm:ss')
so why won't
>> textscan('2021-05-01 06:10:00','%{yyyy-MM-dd HH:mm:ss}D')
Error using textscan
Unable to read the DATETIME data with the format 'yyyy-MM-dd HH:mm:ss'. If the data is not a time, use %q to get text data.

Accepted Answer

Cris LaPierre
Cris LaPierre on 20 Jul 2021
The problem is because textscan uses white space as the default delimiter. Specify your delimiter or remove the space between date and time.
d1 = textscan('2021-05-01 06:10:00','%{yyyy-MM-dd hh:mm:ss}D','Delimiter','\t')
d1 = 1×1 cell array
{[2021-05-01 06:10:00]}
d2 = textscan('2021-05-0106:10:00','%{yyyy-MM-ddhh:mm:ss}D');
d2{1}.Format = 'yyyy-MM-dd hh:mm:ss'
d2 = 1×1 cell array
{[2021-05-01 06:10:00]}




Community Treasure Hunt

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

Start Hunting!

Translated by