MATLAB에서 파일의 존재 확인

Ammar Ali 2023년6월20일
  1. MATLAB에서 exist() 함수를 사용하여 파일의 존재 여부 확인
  2. MATLAB에서 dir() 함수를 사용하여 파일의 존재 여부 확인
MATLAB에서 파일의 존재 확인

이 튜토리얼에서는 MATLAB에서 exist()dir() 기능을 사용하여 디렉토리에 파일이 있는지 확인하는 방법에 대해 설명합니다.

MATLAB에서 exist() 함수를 사용하여 파일의 존재 여부 확인

MATLAB의 exist() 함수를 사용하여 디렉토리에 파일이 있는지 확인할 수 있습니다. exist() 함수에는 다양한 구문이 있습니다.

exist() 함수의 첫 번째 구문은 다음과 같습니다.

exist file_name

위의 코드에서 file_name 대신 파일 또는 폴더 이름을 전달해야 합니다. 폴더의 경우 폴더 이름을 정의합니다. 파일의 경우 확장자를 정의해야 합니다.

exist() 함수는 파일이 존재하지 않거나 MATLAB에 특정 폴더에 대한 권한이 없는 경우 0을 반환합니다. exist() 함수는 MATLAB이 사용하는 현재 디렉토리와 내장 함수 및 클래스 디렉토리에서 파일 또는 폴더를 검색합니다.

예를 들어 특정 폴더에 MATLAB .m 파일을 생성한 경우 exist()는 해당 폴더의 파일과 MATLAB의 내장 함수 및 클래스 디렉토리만 검색합니다.

exist() 함수는 파일 이름이 MATLAB 작업 공간에 있는 변수의 이름인 경우 1을 반환합니다. 파일 이름에 .mlx 또는 .m 확장자가 있는 경우 2를 반환합니다.

파일이 현재 디렉터리의 MEX 파일인 경우 함수는 3을 반환합니다. 파일 이름이 현재 디렉토리에 있는 Simulink 모델 파일인 경우 함수는 4를 반환합니다.

파일 이름이 MATLAB의 내장 함수인 경우 5를 반환합니다. 파일 이름이 현재 디렉토리의 P 코드 파일인 경우 함수는 6을 반환합니다.

파일 이름이 폴더인 경우 7을 반환합니다. 파일 이름이 MATLAB의 클래스 이름인 경우 함수는 8을 반환합니다.

지정된 파일을 우선순위에 따라 검색하고 파일이 있으면 결과를 반환하고 검색을 중지합니다. 함수 우선 순위에 대한 자세한 내용은 이 링크를 확인하세요.

예:

clc
clear

exist Videos

출력:

ans =

     7

함수는 7을 반환했으며 이는 지정된 파일 이름이 현재 디렉터리의 폴더임을 의미합니다.

exist() 함수에는 아래에 주어진 두 가지 다른 구문도 있습니다.

exist file_name searchType
type = exist('file_name')

searchType은 위의 코드에서 특정 파일 유형을 검색하기 위한 선택적 인수로 사용됩니다. 내장 함수처럼 특정 파일만 검색하고 싶을 때 유용합니다.

exist() 함수의 두 번째 구문에서 반환된 값을 변수에 저장할 수 있습니다. 예를 들어 MATLAB의 내장 함수 디렉토리에서 파일 이름을 확인해보자.

clc
clear

exist exist builtin
type = exist('exist','builtin')

출력:

ans =

     5


type =

     5

위의 코드에서는 exist() 함수의 두 가지 구문을 사용했으며 Matlab의 내장 함수 디렉터리 내에서 기존 파일 이름을 검색했습니다. 기존 파일 이름이 Matlab의 내장 함수 이름이기 때문에 출력은 5입니다.

exist() 기능에 대한 자세한 내용은 이 링크를 확인하십시오.

MATLAB에서 dir() 함수를 사용하여 파일의 존재 여부 확인

MATLAB의 dir() 함수를 사용하여 디렉토리에 파일이 있는지 확인할 수 있습니다. dir() 함수의 구문은 다음과 같습니다.

dir('file_name')

위의 코드에서 dir() 함수는 주어진 파일 이름에 대한 정보가 있는 5개의 변수를 포함하는 구조체 필드를 반환합니다. 파일 이름이 존재하지 않으면 5개의 변수가 비어 있게 됩니다.

주어진 파일이 현재 디렉토리에 존재하는지 여부를 확인하기 위해 dir() 함수의 출력 크기를 확인할 수 있습니다. 예를 들어 파일이 존재하는 경우 dir() 함수의 출력 크기는 1이 되고 폴더 이름의 경우 크기는 5가 됩니다.

예:

clc
clear

d = dir('animal.jpg')
s = size(dir('animal.jpg'),1)

출력:

d =

  struct with fields:

       name: 'animal.jpg'
     folder: 'C:\Users\ammar'
       date: '09-Mar-2022 13:20:18'
      bytes: 48580
      isdir: 0
    datenum: 7.3859e+05


s =

     1

위의 코드에서 파일의 존재를 확인하기 위해 d 변수 줄을 사용할 필요는 없지만 다른 파일의 세부 정보를 확인할 수 있습니다. 위의 출력에서 변수 s1이며, 이는 MATLAB의 현재 디렉터리에서 파일을 찾을 수 있음을 의미합니다.

dir() 함수는 MATLAB이 사용하는 현재 디렉토리에서만 파일을 검색합니다. 폴더 이름을 전달하면 size() 함수는 폴더가 발견되면 5를 반환하고 찾지 못하면 0을 반환합니다.

dir() 기능에 대한 자세한 내용은 이 링크를 확인하십시오.

작가: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook