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

1 次查看(过去 30 天)
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!

回答(1 个)

Azzi Abdelmalek
Azzi Abdelmalek 2014-11-29
编辑:Azzi Abdelmalek 2014-11-29
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)

类别

Help CenterFile Exchange 中查找有关 Get Started with MATLAB 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by