How to check if a directory(folder) exists?

1.784 visualizzazioni (ultimi 30 giorni)
I am trying to create folders using mkdir, but if I have already created that folder, how do I check that before creating it. a = mkdir(directorylocation,text1) returns 1 in variable a if the directorylocation\text1 is created and if the directory exists. What is the function or condition that checks whether directorylocation\text1 exists

Risposta accettata

drummer
drummer il 20 Ott 2018
well, I suppose you want to create if it doesn't exist, after checking... so you could do it like that:
if ~exist(yourFolder, 'dir')
mkdir(yourFolder)
end
It basically check if youFolder does not exist. If that's true, it creates youFolder.
Cheers.

Più risposte (2)

Cosmo
Cosmo il 4 Ago 2020
If you're using MATLAB R2017b or later, it's better to use isfolder rather than exist like so:
if not(isfolder(yourFolder))
mkdir(yourFolder)
end
  2 Commenti
tjueterb
tjueterb il 11 Ago 2020
Modificato: tjueterb il 11 Ago 2020
In case anyone else was wondering why this solution is better:
To check the existence of a file or folder, you also can use the isfolder or isfile functions. exist searches for files and folders on the search path, which can lead to unexpected results. isfolder and isfile search for files or folders only on the specified path or in the current folder, which can lead to clearer and faster results.
(copied from the exist documentation page)
linhtuptit
linhtuptit il 15 Nov 2023
This has helped me a lot.

Accedi per commentare.


Stephen23
Stephen23 il 25 Mar 2016
Modificato: Stephen23 il 11 Ago 2020
Use exist like this:
7==exist(name,'dir') % check if folder exists
or
7~=exist(name,'dir') % check if folder does NOT exist
To avoid searching the entire MATLAB Search Path use an absolute file/folder name:

Categorie

Scopri di più su File Operations in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by