Load file and remove string characters.

28 Ansichten (letzte 30 Tage)
apex116
apex116 am 28 Nov. 2017
Kommentiert: apex116 am 28 Nov. 2017
Hello,
I would like to extract all the numeric data out of a mixed file where the total line length needs to be determined. I have put a screenshot of the first 5 lines of the file.
In the file, I wish to extract the 13 numeric values and ignore the '#' at the end. I have tried to do this below:
fid = fopen('Boundary.cli');
FC = textscan(fid, '%d %d %d %d %d %d %d %d %d %d %d %d %d',1);
fclose(fid);
This produces the following 1x13 cell:
The issue is that i would like to the read the whole of the file and then convert the cell to a double array of n x 13. Where n is the number of lines of the file.
I would greatly appreciate any help from anyone who knows how to solve this issue.

Akzeptierte Antwort

Jan
Jan am 28 Nov. 2017
Bearbeitet: Jan am 28 Nov. 2017
What about:
FC = textscan(fid, '%d %d %d %d %d %d %d %d %d %d %d %d %d %s');
Then remove the last column in FC. Or:
FC = textscan(fid, '%d %d %d %d %d %d %d %d %d %d %d %d %d %[^\n]');
  2 Kommentare
Stephen23
Stephen23 am 28 Nov. 2017
@apex116: read the textscan documentation and use the CollectOutput option.
apex116
apex116 am 28 Nov. 2017
Dear Stephen, Thank your help. However I am having difficulties with the second suggestion:
FC = textscan(fid, '%d %d %d %d %d %d %d %d %d %d %d %d %d %[^\n]');
The problem is that it doesn't allow me to read more than the first line.
The only reason I am asking as i might have a varying number of string characters following the numeric data.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

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

Community Treasure Hunt

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

Start Hunting!

Translated by