How to use textscan to read this .dat file? (Part 2)

1 Ansicht (letzte 30 Tage)
Hsinho
Hsinho am 22 Mai 2015
Kommentiert: Hsinho am 22 Mai 2015
Hi, I have another similar but more complicated formatted data. I still have a trouble to write correct arguments of "textscan" to read it.
There are 8 data in []. I want each data can be in a column, respectively.
Please find the attached file for the data. Thank you!
  3 Kommentare
Hsinho
Hsinho am 22 Mai 2015
I attached the file.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Stephen23
Stephen23 am 22 Mai 2015
Bearbeitet: Stephen23 am 22 Mai 2015
Given the file formatting given in your last question, this will read the numeric data:
fmt = repmat('%f',1,8);
fmt = ['{%*q%f%*q[',fmt,']%*q[',fmt,']%*q[',fmt,']}'];
fid = fopen('temp.txt','rt');
A = cell2mat(textscan(fid,fmt,'Delimiter','":, ', 'MultipleDelimsAsOne',true));
fclose(fid);
Although strictly speaking the final group of numeric values should be strings, as they occur within double quotation marks. The quotation marks around numeric values makes parsing the data much more difficult and less robust.
The code was tested on this file:

Weitere Antworten (0)

Kategorien

Mehr zu Data Import and Export finden Sie in Help Center und File Exchange

Tags

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by