retrieve data containing date and time from text file

2 views (last 30 days)
Hi all,
I encountered the following strange problem when trying to retrieve date and time and other data from a text string.
The following runs OK.
>>tmp = '460018898104779 6d0502fb0be52d 2018-09-27 23:59:48';
>>test2 = textscan(tmp, '%f%14c%{yyyy-MM-dd HH:mm:ss}D', 'Delimiter',{'\n'});
But when I append two more doubles to the text string and run
>>tmp = '460018898104779 6d0502fb0be52d 2018-09-27 23:59:48 113.944081 22.504949';
>>test2 = textscan(tmp, '%f%14c%{yyyy-MM-dd HH:mm:ss}D%f%f', 'Delimiter',{'\n'});
It gives the following error message:
>>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.
Could somebody help to clarify what has gone wrong? Thank you very much!
Bayern

Accepted Answer

Walter Roberson
Walter Roberson on 29 Sep 2018
You should use Delimiter '\t' rather than \n
  8 Comments
bayern science
bayern science on 4 Oct 2018
Many thanks for digging deep into the format dpb! You have made the thread more helpful!
dpb
dpb on 4 Oct 2018
NB: I corrected original mistake of 'whitespace' for 'delimiter' in first paragraph regarding textscan propensity to add the blank even if not user-provided.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!