How to turn data from text file into cell array?

14 Ansichten (letzte 30 Tage)
Japoe25
Japoe25 am 7 Mai 2015
Kommentiert: Japoe25 am 7 Mai 2015
So I've got this sample.txt and I'm told that the first integer is to be the number of triangles there are on the array while the following numbers are the width and height respectively.
So far I'm at:
FID=fopen('sample.txt','r');
A=fscanf(FID,'%s');
and I get the string but it has no spaces. I want the scan to ignore the 1st number and make the rest into a 2 column matrix so I can used the height and width to create the area. Please help!

Akzeptierte Antwort

Michael Haderlein
Michael Haderlein am 7 Mai 2015
Bearbeitet: Michael Haderlein am 7 Mai 2015
What is rows 2-18? Under the assumption that we can ignore them, just use textscan and take them as headerlines:
>> fid=fopen('sample.txt');
>> data=textscan(fid,'%f%f','headerlines',18);
>> fclose(fid);
>> width=data{1};
>> height=data{2};
However, only 100 rows are found then instead of 112. But as some of the rows before row 19 have more/less than 2 columns, they don't seem to have the same meaning.
  3 Kommentare
Michael Haderlein
Michael Haderlein am 7 Mai 2015
>> fid=fopen('sample.txt');
>> data=textscan(fid,'%f','headerlines',1);
>> fclose(fid);
>> width=data{1}(1:2:end);
>> height=data{1}(2:2:end);
Japoe25
Japoe25 am 7 Mai 2015
That's much better! thank you kind sir, sorry for duplicating, I was getting impatient :(

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Low-Level File I/O 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