Using FGETL to skip 2 header lines

How do I use FGETL to skip 2 header lines?
My data file looks like this
Row 1: ID FName LName Year Class
Row 2: ---------------------------------
Row 3: data starts here
After I open the file with FOPEN
fid=fopen('textfile.dat','r');
How do I use FGETL to skip the 2 header lines (rows 1 & 2)?
Thanks in advance.

 Réponse acceptée

per isakson
per isakson le 24 Juil 2013

0 votes

Call it twice and ignore the results.

5 commentaires

Thanks for your reply. How do I call it twice? (sorry, newbie here. Only 2nd week into my matlab class.)
fid=fopen('textfile.dat','r');
line=fgetl(fid);
Cedric
Cedric le 24 Juil 2013
Modifié(e) : Cedric le 24 Juil 2013
fid=fopen('textfile.dat','r');
fgetl(fid); % Read/discard 1 line.
fgetl(fid); % Read/discard 1 line.
% Then you start reading and processing lines.
ERC
ERC le 24 Juil 2013
Thank you!
Cedric
Cedric le 24 Juil 2013
Don't forget to [ Accept the Answer ] if it solved your problem.
ERC
ERC le 24 Juil 2013
Done. Thanks for the reminder.

Connectez-vous pour commenter.

Plus de réponses (1)

Dan Seal
Dan Seal le 27 Juil 2013

0 votes

A good way to read data from text files with headers is with the textscan function. When calling textscan, you an specify a number of header rows in your file. For example, if ID and Year are numeric and the other columns are strings, use:
fid=fopen('textfile.dat','r');
C = textscan(fid, '%d %s %s %d %s', 'HeaderLines', 2);

Produits

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by