Überprüfen Sie die Existenz einer Datei in MATLAB

Ammar Ali 20 Juni 2023
  1. Überprüfen Sie die Existenz einer Datei mit der Funktion exist() in MATLAB
  2. Überprüfen Sie die Existenz einer Datei mit der Funktion dir() in MATLAB
Überprüfen Sie die Existenz einer Datei in MATLAB

In diesem Tutorial wird die Überprüfung der Existenz einer Datei in einem Verzeichnis mit den Funktionen exist() und dir() in MATLAB behandelt.

Überprüfen Sie die Existenz einer Datei mit der Funktion exist() in MATLAB

Wir können die Existenz einer Datei in einem Verzeichnis mit der Funktion exist() von MATLAB überprüfen. Die Funktion exist() hat verschiedene Syntaxen.

Die erste Syntax der Funktion exist() ist unten angegeben.

exist file_name

Im obigen Code müssen wir anstelle von file_name den Datei- oder Ordnernamen übergeben. Im Falle eines Ordners definieren wir den Ordnernamen; und im Fall einer Datei müssen wir ihre Erweiterung definieren.

Die Funktion exist() gibt 0 zurück, wenn die Datei nicht existiert oder MATLAB keine Berechtigung für den bestimmten Ordner hat. Die Funktion exist() sucht nach der Datei oder dem Ordner im aktuellen Verzeichnis, das von MATLAB und seinem eingebauten Funktionen- und Klassenverzeichnis verwendet wird.

Wenn wir zum Beispiel eine MATLAB .m-Datei in einem bestimmten Ordner erstellt haben, sucht exist() nur nach der Datei in diesem Ordner und dem integrierten Funktions- und Klassenverzeichnis von MATLAB.

Die Funktion exist() gibt 1 zurück, wenn der Dateiname ein Name einer Variablen im Workspace von MATLAB ist. Es wird 2 zurückgegeben, wenn der Dateiname mit einer Erweiterung .mlx oder .m existiert.

Die Funktion gibt 3 zurück, wenn die Datei eine MEX-Datei im aktuellen Verzeichnis ist. Die Funktion gibt 4 zurück, wenn der Dateiname eine Simulink-Modelldatei im aktuellen Verzeichnis ist.

Es wird 5 zurückgegeben, wenn der Dateiname eine eingebaute Funktion von MATLAB ist. Die Funktion gibt 6 zurück, wenn der Dateiname eine P-Code-Datei im aktuellen Verzeichnis ist.

Es wird 7 zurückgegeben, wenn der Dateiname ein Ordner ist. Die Funktion gibt 8 zurück, wenn der Dateiname der Name einer Klasse in MATLAB ist.

Es sucht nach der angegebenen Datei in der Reihenfolge der Priorität, und wenn eine Datei gefunden wird, gibt es das Ergebnis zurück und stoppt die Suche. Unter diesem Link finden Sie weitere Einzelheiten zur Funktionsrangfolge.

Beispiel:

clc
clear

exist Videos

Ausgang:

ans =

     7

Die Funktion hat 7 zurückgegeben, was bedeutet, dass der angegebene Dateiname ein Ordner im aktuellen Verzeichnis ist.

Die Funktion exist() hat auch zwei andere Syntaxen, die unten angegeben sind.

exist file_name searchType
type = exist('file_name')

Der searchType wird als optionales Argument verwendet, um im obigen Code nach einem bestimmten Dateityp zu suchen. Es ist nützlich, wenn wir nur nach einer bestimmten Datei wie einer integrierten Funktion suchen möchten.

In der zweiten Syntax der Funktion exist() können wir den zurückgegebenen Wert in einer Variablen speichern. Lassen Sie uns zum Beispiel einen Dateinamen im integrierten Funktionsverzeichnis von MATLAB überprüfen.

clc
clear

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

Ausgang:

ans =

     5


type =

     5

Im obigen Code haben wir zwei Syntaxen der Funktion exist() verwendet und wir haben nach dem vorhandenen Dateinamen im eingebauten Funktionsverzeichnis von Matlab gesucht. Die Ausgabe ist 5, da der vorhandene Dateiname der Name einer eingebauten Funktion in Matlab ist.

Überprüfen Sie diesen Link für weitere Details über die Funktion exist().

Überprüfen Sie die Existenz einer Datei mit der Funktion dir() in MATLAB

Wir können die Existenz einer Datei in einem Verzeichnis mit der Funktion dir() von MATLAB überprüfen. Die Syntax der Funktion dir() ist unten angegeben.

dir('file_name')

Im obigen Code gibt die Funktion dir() ein Struct-Feld zurück, das fünf Variablen enthält, die Informationen über den angegebenen Dateinamen enthalten. Wenn der Dateiname nicht existiert, sind die fünf Variablen leer.

Wir können die Größe der Ausgabe der Funktion dir() überprüfen, um zu prüfen, ob die angegebene Datei im aktuellen Verzeichnis existiert oder nicht. Wenn die Datei beispielsweise existiert, ist die Ausgabegröße der Funktion dir() 1, und im Fall eines Ordnernamens ist die Größe 5.

Beispiel:

clc
clear

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

Ausgang:

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

Im obigen Code müssen wir die Variablenzeile d nicht verwenden, um die Existenz der Datei zu überprüfen, aber sie kann die Details anderer Dateien überprüfen. In der obigen Ausgabe ist die Variable s 1, was bedeutet, dass die Datei im aktuellen Verzeichnis von MATLAB gefunden wird.

Beachten Sie, dass die Funktion dir() nur im aktuellen Verzeichnis, das von MATLAB verwendet wird, nach der Datei sucht. Wenn wir einen Ordnernamen übergeben, gibt die Funktion size() 5 zurück, wenn der Ordner gefunden wird, und 0, wenn er nicht gefunden wird.

Überprüfen Sie diesen Link für weitere Details über die Funktion dir().

Autor: 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