主要内容

存在

检查变量、脚本、函数、文件夹或类的存在性

描述

例子

存在的名字返回的类型的名字作为一个数字。这个列表描述了与每个值相关联的类型:

  • 0 -的名字不存在或因其他原因无法找到。例如,如果的名字存在于一个受限制的文件夹中,MATLAB®没有访问权限,存在返回0。

  • 1 -的名字是工作区中的一个变量。

  • 2 -的名字文件是否具有扩展名。m,.mlx,或.mlapp,或的名字是带有非注册文件扩展名(.mat,.fig,. txt)。

  • 3 -的名字是MATLAB搜索路径上的一个mex文件。

  • 4 -的名字是一个加载的Simulink®模型或Simulink模型或MATLAB搜索路径上的库文件。

  • 5 -的名字是一个内置的MATLAB函数。这并不包括类。

  • 6 -的名字是MATLAB搜索路径上的P-code文件。

  • 7 -的名字是一个文件夹。

  • 8 -的名字是一个类。(存在返回0为Java类,如果你开始MATLAB与-nojvm选择。)

MATLAB从search路径的顶部开始搜索,向下移动直到找到一个结果或到达路径上的最后一个文件夹。如果有多个的名字存在的文件夹中,MATLAB显示的第一个实例的名字,根据功能优先级顺序。文件夹是函数优先规则的一个例外。除了变量和内置函数,它们优先于所有类型。

例如,如果的名字将文件与。m扩展和P-code文件,然后存在返回6,将其标识为P-code文件。如果的名字同时匹配变量和P-code文件,exists返回1,将其标识为变量。如果的名字既匹配文件夹又匹配MATLAB函数,存在返回7,将其标识为文件夹。

例子

存在的名字searchType返回的类型的名字,将结果限制为指定类型,searchType。如果的名字类型的searchType不存在,MATLAB返回0

例子

一个=存在(___)返回的类型的名字一个

例子

全部折叠

创建一个名为检测结果,然后确认其在工作空间中的存在。

检测结果=魔法(5);存在检测结果
ans = 1

一个变量命名检测结果存在于工作区中。

创建文件夹myfolder,然后检查其是否作为文件夹存在。

mkdirmyfolder;存在myfolderdir
ans = 7

如果指定类型为文件, MATLAB®搜索文件和文件夹,因此返回相同的结果。

存在myfolder文件
ans = 7

检查是否情节函数是一个内置函数或文件。

一个=存在(“阴谋”)
一个= 5

这表明情节是一个内置的MATLAB函数。

输入参数

全部折叠

变量、脚本、函数、文件夹或类的名称,指定为字符向量或字符串标量。

的名字可以包含部分路径,但必须是以下之一:

  • 搜索路径上的文件夹

  • 在搜索路径上的文件夹里

  • 当前文件夹

  • 在当前文件夹中

不搜索路径上文件夹的子文件夹。

否则,的名字必须包含完整的路径。

如果的名字指定一个具有非注册文件扩展名(.mat,.fig,. txt),包括扩展名。你也可以包含一个扩展名,以防止与其他类似的文件名冲突。例如,存在file.txt存在(“file.txt”)

请注意

MATLAB不检查文件的内容或内部结构,仅依靠文件扩展名进行分类。

数据类型:字符|字符串

要搜索的结果类型,指定为以下值之一:

searchType 描述 可能的返回值

内装式

只检查内置函数。

5、0

只检查班级。

8日0

dir

只检查文件夹。

7日0

文件

只检查文件或文件夹。

2,3,4,6,7,0

var

只检查变量。

1, 0

选择功能

  • 要检查文件或文件夹的存在,您还可以使用isfolderisfile功能。存在搜索搜索路径上的文件和文件夹,这可能会导致意想不到的结果。isfolderisfile只在指定路径或当前文件夹中搜索文件或文件夹,这样可以得到更清晰、更快的结果。

扩展功能

版本历史

之前介绍过的R2006a

Baidu
map