Hoe to Empty Line Discover!
2 次查看(过去 30 天)
显示 更早的评论
Hi-
I have text file (T.txt).
"2" position is blank. I want to discover position "2" (Line 2)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1186248/image.gif)
fid = fopen('T.txt','r');
tline = fgetl(fid);
?
-----------------------------------------------------------------------
I'm about to discover that line two is empty.
What should I do?
0 个评论
回答(1 个)
Chris
2022-11-9
if isempty(tline)
% do something, or nothing?
end
2 个评论
Chris
2022-11-9
I see both a loop, and an fscanf which reads the whole file. I will continue with the loop.
Try a while loop.
feof means "end of file". ~feof means the loop hasn't finished reading the file yet.
First initialize some empty variables, and iterate or concatenate them in the loop.
n = 0;
Empty_line = [];
data = strings(0);
fid = fopen('T.txt','r');
while ~feof(fid)
n = n+1;
tline = fgetl(fid);
if isempty(tline)==1
% One way to concatenate:
Empty_line = cat(1, Empty_line, n);
else
% Another way to concatenate:
data = [data; tline];
end
end
fclose(fid);
For the data, you could use a string array, and concatenate. Before the loop, initialize it with
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Low-Level File I/O 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!