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 件のコメント

darova
darova 2020 年 2 月 25 日
The code works. What is the question?
Walter Roberson
Walter Roberson 2020 年 2 月 25 日
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 2020 年 2 月 25 日
It doesn't work for non-empty folders

サインインしてコメントする。

 採用された回答

Rik
Rik 2020 年 2 月 25 日

0 投票

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.

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeFile Operations についてさらに検索

製品

タグ

質問済み:

2020 年 2 月 25 日

回答済み:

Rik
2020 年 2 月 25 日

Community Treasure Hunt

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

Start Hunting!

Translated by