question to continue the code

2 visualizaciones (últimos 30 días)
Gaetano Pavone
Gaetano Pavone el 25 de Feb. de 2020
Respondida: Rik el 25 de Feb. de 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 comentarios
Walter Roberson
Walter Roberson el 25 de Feb. de 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 el 25 de Feb. de 2020
It doesn't work for non-empty folders

Iniciar sesión para comentar.

Respuesta aceptada

Rik
Rik el 25 de Feb. de 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.

Más respuestas (0)

Categorías

Más información sobre File Operations en Help Center y File Exchange.

Etiquetas

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by