Error using exist "The optional second input to exist must be 'var', 'builtin','class', 'dir' or 'file' "

I don't understand why the following code doesn't work
for k = 1:4
% Create a text file name, and read the file.
textFileName = ['A' num2str(k) '.txt'];
if exist(textFileName, 'A')
fid = fopen(textFileName, 'rt');
mydata = fread(fid);
fclose(fid);
else
fprintf('File %s does not exist.\n', textFileName);
end
end

1 commentaire

What do you think this does or want it to do?
if exist(textFileName, 'A')
You expect this if condition to be satisfied if ... ?
Once we know that we may be able to help you write the correct command.

Connectez-vous pour commenter.

 Réponse acceptée

It looks like you're checking the existance of a certain file named something like "A1.txt" on the matlab path prior to reading that file. The exist() function has 1 mandatory input and 1 optional input. The optional input allows you to specify the type of result to search for. If you're searching for a file, one of those option for the 2nd input is 'file'.
The correct way to search for the existance of that file on the matlab path is:
if exist(textFileName, 'file')

Plus de réponses (0)

Catégories

En savoir plus sur Characters and Strings dans Centre d'aide et File Exchange

Produits

Version

R2016a

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by