Matlab doesn't see a file
Afficher commentaires plus anciens
I am in the same directory, it collects it in a dir, but exist shows 0 and I can't open it.

2 commentaires
Tom
le 10 Juin 2015
Réponses (4)
Walter Roberson
le 11 Juin 2015
There could be non-printing characters in the name.
dinfo = dir('*.xlsx');
for K = 1 : length(dinfo)
thisfile = dinfo(K).name;
disp(thisfile); %as string
disp(thisfile + 0); %as bytes
r = exist(thisfile);
if r > 0
fprintf('File exists, type %d\n', r);
else
fprintf('File does not exist??\n');
end
end
Joseph Cheng
le 10 Juin 2015
Modifié(e) : Joseph Cheng
le 10 Juin 2015
Thats because the file doesn't have a y at the end. Clearly the file shown using dir is
TEMPOgratingEfficienc.xlsx
and your exist is looking for TEMPOgratingEfficiency.xlsx
2 commentaires
Tom
le 10 Juin 2015
Joseph Cheng
le 10 Juin 2015
I'd say update the picture to show both. I see the file now as it partially cut of under the TEMPOgratingEfficiency - Copy.xlsx. Are you able to put the full path such as
exist('c:\temporary\thefileimlookingat.xls')
Kelly Kearney
le 10 Juin 2015
0 votes
In your exist call, you refer to the file as TEMPOgratingEfficiency.xlsx, while the dir list shows TEMPOgratingEfficienc.xlsx. Note the missing y in the latter.
1 commentaire
Tom
le 10 Juin 2015
Image Analyst
le 11 Juin 2015
0 votes
Like the editor recommends, try using the 'file' option in exist(). And like Joseph said, update your screenshot. And attach the "invisible" file so we can check it on our computers.
Catégories
En savoir plus sur File Operations dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!