MATLAB: Error using fgets Invalid file identifier. Use fopen to generate a valid file identifier.

this is my pgm
function [filenames, classIDs] = ReadOutexTxt(txtfile)
i= 1;
fid = fopen(txtfile,'r');
%tline = fgetl(fid); % get the number of image samples
while 1
tline = fgetl(fid);
if ~ischar(tline)
break, end
%disp(tline)
index = findstr(tline,'.');
filenames(i) = str2double(tline(1:index-1)); % the picture ID starts from 0, but the index of Matlab array starts from 1
classIDs(i) = str2double(tline(index+5:end));
i = i+1;
end
fclose(fid)

Best Answer

Add
if fid == -1
error('Cannot open file.')
end
You probably misspelled txtfile or it is not in the current directory.
Related Question