MATLAB: Count the number of space character from a text file which has multiple lines

functionMATLABstringtext file

Hello everyone,
I am currently working on my function of counting space characters, it works well if my text file has only 1 line but it messes up when i input multiples lines into my file. Could anyone please tell me what I am doing wrong?
function space = swap(file)
file = 'mytext.txt';
f = fopen(file, 'rt');
while feof(f) == 0
s = fgetl(f);
a = length(strrep(s, ' ', ''));
b = length(s);
space = b - a;
end
end

Best Answer

What you are actually doing in the while loop is , assigning the number of spaces in each line to the variable space. It will always store the number of spaces in the last line at the end of the loop. If you want to calculate total number of spaces do
space = space + (b-a);
It will look something like this:
file = 'abc.txt';
f = fopen(file, 'rt');
space = 0;
while feof(f) == 0
s = fgetl(f);
a = length(strrep(s, ' ', ''));
b = length(s);
space = space + (b - a);
end