如何检查Matlab中是否存在文件?

时间:2015-12-04 16:22:27

标签: matlab

if exist('JaccardDistance', 'file')==1
    load('JaccardDistance');
else
    % Do things
end

文件JaccardDistance位于执行此代码的同一文件夹中。问题是"否则" part始终被执行,这意味着它没有识别文件JaccardDistance存在。我究竟做错了什么?提前谢谢。

3 个答案:

答案 0 :(得分:18)

对于存在的文件,将返回2而不是1.您还应在检查中包含文件扩展名。

if exist('JaccardDistance.m', 'file') == 2

参考matlab forum 或者阅读manual

exists name返回name的状态:

  • 0名称不存在。
  • 1 name是工作区中的变量。
  • 2以下其中一项是正确的:

    • 名称作为扩展名为.m。
    • 的文件存在于MATLAB®搜索路径中
    • name是MATLAB搜索路径上普通文件的名称。
    • name是任何文件的完整路径名。

答案 1 :(得分:0)

存在的函数不返回1,你必须使用

if exist('JaccardDistance', 'file')

根据找到的功能,返回1到8之间的视图。如果未找到任何内容,则返回0。

答案 2 :(得分:0)

要返回1或0,请使用

size(dir('JaccardDistance'),1)

即。 if size(dir('JaccardDistance'),1)== 1%//你有一个文件,如果你没有文件