exist

Проверяйте существование переменной, скрипта, функции, папки или класса

Описание

пример

exist name возвращает тип name как номер. Этот список описывает тип, сопоставленный с каждым значением:

  • 0 — name не существует или не может быть найден по другим причинам. Например, если name существует в ограниченной папке к который MATLAB® не имеет доступа, exist возвращается 0.

  • 1 — name переменная в рабочей области.

  • 2 — name файл с дополнительным .m, .mlx, или .mlapp, или name имя файла с незарегистрированным расширением файла (.mat, .figtxt ).

  • 3 — name файл MEX на вашем пути поиска файлов MATLAB.

  • 4 — name загруженный Simulink® модель или модель Simulink или файл библиотеки на вашем пути поиска файлов MATLAB.

  • 5 — name встроенная функция MATLAB. Это не включает классы.

  • 6 — name Pcode-файл на вашем пути поиска файлов MATLAB.

  • 7 — name папка.

  • 8 — name класс. существовать возвращается 0 для классов Java, если вы начинаете MATLAB с -nojvm опция.)

Достигнуты поисковые запросы MATLAB, запускающиеся наверху пути поиска файлов и спускающиеся, пока результат не найден или последняя папка на пути. Если больше чем один name существует в папке, MATLAB отображает первую инстанцию name, согласно Порядку приоритета функций. Папки являются исключением к функциональным правилам приоритета. У них есть приоритет по всем типам за исключением переменных и встроенных функций.

Например, если name соответствия оба файл с .m расширение и Pcode-файл, затем exist возвращается 6, идентифицируя его как Pcode-файл. Если name соответствия и переменная и Pcode-файл, существует, возвращается 1, идентифицируя его как переменную. Если name соответствия и папка и функция MATLAB, exist возвращает 7, идентификация его как папка.

пример

exist name searchType возвращает тип name, ограничивая результаты заданным типом, searchType. Если name из типа searchType не существует, MATLAB возвращает 0.

пример

A = exist(___) возвращает тип name к A.

Примеры

свернуть все

Создайте переменную под названием testresults, и затем подтвердите его существование в рабочей области.

testresults = magic(5);
exist testresults
ans = 1

Переменная под названием testresults существует в рабочей области.

Создайте папку myfolder, и затем проверяйте его существование как папку.

mkdir myfolder;
exist myfolder dir
ans = 7

Если вы задаете тип как file, Поиски MATLAB® и файлы и папки, поэтому возвращая тот же результат.

exist myfolder file
ans = 7

Проверяйте ли plot функция является встроенной функцией или файлом.

A = exist('plot')
A = 5

Это указывает на тот plot встроенная функция MATLAB.

Входные параметры

свернуть все

Имя переменной, скрипта, функции, папки или класса в виде вектора символов или строкового скаляра.

name может включать частичный путь, но должен быть один из них:

  • Папка на пути поиска файлов

  • В папке на пути поиска файлов

  • Текущая папка

  • В текущей папке

Подпапки папок на пути не ищутся.

В противном случае, name должен включать полный путь.

Если name задает файл с незарегистрированным расширением файла (.mat, .figtxt ), включайте расширение. Можно также включать расширение, чтобы предотвратить конфликт с другими подобными именами файлов. Например, exist file.txt или exist("file.txt").

Примечание

MATLAB не исследует содержимое или внутреннюю структуру файла и полагается только на расширение файла для классификации.

Типы данных: char | string

Тип результатов искать в виде одного из этих значений:

searchType ОписаниеВозможные возвращаемые значения

builtin

Проверки только на встроенные функции.

5, 0

class

Проверки только на классы.

8, 0

dir

Проверки только на папки.

7, 0

file

Проверки только на файлы или папки.

2, 3, 4, 6, 7, 0

var

Проверки только на переменные.

1, 0

Альтернативная функциональность

  • Чтобы проверять существование файла или папки, также можно использовать isfolder или isfile функции. exist поиски регистрируют и папки на пути поиска файлов, который может привести к неожиданным результатам. isfolder и isfile ищите файлы или папки только на заданном пути или в текущей папке, которая может привести к более ясным и более быстрым результатам.

Расширенные возможности

Представлено до R2006a