fastest way to read in every m lines of a file sequentially?

5 Ansichten (letzte 30 Tage)
Adam
Adam am 29 Nov. 2014
Bearbeitet: Azzi Abdelmalek am 29 Nov. 2014
I need to read in every 100 lines of a very large file. Then I so some calculations with the data of those 100 lines then I get the next 100 lines (in order) and do the same set of calculations...and repeat until the last set of 1000 lines of the very large file. I cannot read in the entire large file at once, as it is too big.
What is the best (fastest) way to do this?
I already know the basic structure:
while(~feof(myfile))
a=fgetl(myfile)
end
Thanks!

Antworten (1)

Azzi Abdelmalek
Azzi Abdelmalek am 29 Nov. 2014
Bearbeitet: Azzi Abdelmalek am 29 Nov. 2014
fid=fopen(myfile)
k=0;
a=cell(1,100)
while ~feof(fid)
k=k+1
a{k}=fgetl(fid)
if mod(k,100)==0
%do your calculations
end
end
fclose(fid)

Kategorien

Mehr zu Low-Level File I/O finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by