Using fgetl() to read lines

How can I choose different line to read instead first line, using fgetl() formula?
Thank you.

 Réponse acceptée

Amith Kamath
Amith Kamath le 10 Jan 2013

0 votes

http://www.mathworks.com/matlabcentral/newsreader/view_thread/297814 may be of some help. Unless you are constrained to using fgetl() for some reason,
C = textscan(fid, '%s','delimiter', '\n');
% Setup the line number in LineNum,
RelevantLine=C{1}{Linenum};
should do the trick.

3 commentaires

ZK
ZK le 11 Jan 2013
Thak You, I used this function, and it's working freat. It's very usefull that it's save as char.
I have one more question, can I choose two lines to read like second and third in one time, how can I do it?
Amith Kamath
Amith Kamath le 11 Jan 2013
I agree with Walter that this stores the entire file into the cell array, and isn't technically skipping lines. You could possibly choose more lines by using strcat on C{1}{LineNum1} and C{1}{LineNum2}.
ZK
ZK le 11 Jan 2013
Modifié(e) : ZK le 11 Jan 2013
Thank You I will remember that.

Connectez-vous pour commenter.

Plus de réponses (1)

Walter Roberson
Walter Roberson le 10 Jan 2013

0 votes

There is no method at the operating system level to position by line. The operating system itself uses fgetl() (or fgets()) to move forward by lines. MATLAB does not provide any "wrapper" over fgetl() to support skipping lines.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by