File Exchange

image thumbnail

readline.m v4.0

Reads the specified line(s) from a file.

3.88889
9 Ratings

0 Downloads

Updated

View License

USAGE:
% Reads the first line (default)
s = readline('data.txt');
% Reads the 8th line
s = readline('data.txt',8);

% Reads the [1 2 4 8] lines
s = readline('data.txt',[1 2 4 8]);
% Reads last 7 lines
s = readline('data.txt',[-7; -1]);
% Or just, reads the whole file
s = readline('data.txt','all');

NOTES:
In general, the output is a cell of strings. You may force a string matrix output with a third argument
s = readline('data.txt','all','string');

Comments and Ratings (13)

zjxugd

zjxugd (view profile)

Thank you.

Simon Musall

Very handy, thanks for the submission

Well done

Is not true Gabriel, it need to be like that so to be able to generate range from negative inputs. The author.

Thank you.

Imprivement:
When called readline(file, lines) and lines is a vector, it should not matter wether lines is a row or column vector.

Peter K. Lord

Very practical and easy to use.

Carlos Adrian Vargas Aguilera

New version ready.

Carlos Adrian Vargas Aguilera

Us is terrible right... the code can be improved to be much more faster and it even has some errors (do not close the file, etc). Please wait to new submition...

Urs (us) Schwarz

sorry, but for once(!) i strongly and distinctly disagree with mr shvorob and jd: this is NOT the way to do it in a typical 21st century computational environment.
us

John D'Errico

Sorry, I forgot to add the rating.

John D'Errico

Yes, I agree with Dimitri. This is not a world class piece of code, in the sense that it solves some problem of Nobel prize importance. This is only a wrapper for some simple calls.

But as Dimitri said, it does what it claims to do. It is well documented. It has an H1 line, proper error messages. I find it a pleasure to see code well done. Maybe I'm just relieved to find something well done in comparison to the rest of the crop uploaded to the file exchange on this day. Regardless, I'll give this a 5 rating. If you need/want something that does what this does, then this code does it well.

Carlos Adrian Vargas Aguilera

Just for fun, Dimitri (and more clearer writing of course)...

Dimitri Shvorob

So much code for a fairly straightforward FGETL wrapper? Still, it works, no complaints.

Updates

4.0

V4.0 Now accepts 'all' input. Uses TEXTSCAN instead of TEXTREAD.

1.1

V3.0 Rewritten code. Negative NLINES values now indicated number of line from the End-of-File, instead of from the last line. New pairwise optional inputs for TEXTSCAN.

MATLAB Release
MATLAB 8.4 (R2014b)
Acknowledgements

Inspired by: saveascii.m v6.2 (Oct 2009)

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video