MATLAB: How to let ‘textscan’ stop when read an empty line

textscan empty line blank line stop

I have double quoted csv file:
"header1"
(descriptions)
"A","B","3","A","B","3"
"C","B","3","T","B","2"
"D","B","3","A","H","3"
"E","B","3","A","B","6"
"F","B","3","Z","J","3"
(empty line here)
"header2"
(descriptions)
"A","B","3","A","B","3"
"C","B","5","A","B","3"
"D","B","4","A","H","3"
"E","B","3","A","L","1"
"F","B","2","A","I","3"
I tried to use:
fid=fopen('..\data.csv', 'r')
fgetl(fid)
fgetl(fid)
inputtext = textscan(fid, '%q%q%q%q%q%q', ...
'delimiter', ',');
but it reads everything until hits the end of the data file (including header2). How to read data above the empty line? Thanks!!

Best Answer

instead of reading the whole block of data using textscan, I tried to read it into a cell line by line. Textscan will stop when hits the empty line.
Code:
while (~feof(fid_t))
temp1 = fgetl(fid_t);
if isempty(temp1)
break;
end
inputtext=textscan(temp1, formatstring,...
'delimiter',',')
temp_out=[inputtext{:}];
Data(end+1,:)=temp_out;
end
and it works finally. It is still not an effective way, but it works. any suggestion?