question to continue the code

3 visualizzazioni (ultimi 30 giorni)
Gaetano Pavone
Gaetano Pavone il 25 Feb 2020
Risposto: Rik il 25 Feb 2020
I would like to create a code that creates a folder, verifies if it already exists and if it occurs asks the user if continue or not.
If the folder already exists, two options should be available:
  1. overwrite the folder (delete it and remake)
  2. terminate the code
My code is:
name='Folder';
loadcase='11';
if ~exist([name,loadcase], 'dir') % create saving folder
mkdir([name,loadcase]);
else
prompt=('The folder already exists. Do you want to overwrite the analysis?');
risp=input(prompt,'s');
if risp=='Y'
rmdir([name,loadcase]);
mkdir([name,loadcase]);
else
finish
end
end
  3 Commenti
Walter Roberson
Walter Roberson il 25 Feb 2020
Probably what to put in in place of finish
If you were to put this into a function then return from the function.
Gaetano Pavone
Gaetano Pavone il 25 Feb 2020
It doesn't work for non-empty folders

Accedi per commentare.

Risposta accettata

Rik
Rik il 25 Feb 2020
As the documentation states, rmdir only works for empty folders. If you want to remove all files and folders inside that folder you will have to use the s switch:
rmdir([name,loadcase],'s');
doc:
rmdir folderName s also attempts to remove all subfolders and files in folderName, regardless of their write permissions. The result for read-only files follows the practices of the operating system.

Più risposte (0)

Categorie

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

Tag

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by