我正在尝试从文本文件中读取数据。数据只是随机单词的行。 我试图跳过此文件中的空行而不加载它。我使用带有fgetl的循环来加载数据,并使用语句feof(fid)== 0来知道何时到达文件的末尾。我尝试使用isempty来擦除这些线条。但问题是它在空的之后也会跳过这条线。我认为这是循环中的一个问题。 还有另一种表达feof(fid)的方式,以便它发生冲突吗?
while feof(fid)==0
randomline=fgetl(fid)
if isempty(aline)
randomline=fgetl(fid)
else
%store data
end
end
答案 0 :(得分:4)
fgetl
增加行计数器。在数据检查逻辑中添加对fgetl
的另一个调用是它再次递增的原因。
while ~feof(fid)
randomline = fgetl(fid)
if ~isempty(randomline)
% if line is not empty, store the line
end
end