save ensure automatic renaming

10 Ansichten (letzte 30 Tage)
Wouter Verstraelen
Wouter Verstraelen am 7 Jun. 2019
Bearbeitet: Stephen23 am 7 Jun. 2019
I am running a script repeatedly each time changing a few parameters, each time evaluation takes at least a few hours. At the end of my code, I put
save('myfilename.mat').
Now, each time, I have to ensure I change myfilename to avoid any data gets overwritten. Is there a way to ensure that if 'myfilename.mat' already exists, matlab saves the second .mat file as 'myfilename(1).mat' etc?
  2 Kommentare
Stephen23
Stephen23 am 7 Jun. 2019
Bearbeitet: Stephen23 am 7 Jun. 2019
This is exactly what my FEX submission is intended for:
It is designed to work efficiently even when there are a large number of files, and does not rely on a particular loop or continual code evaluation.
Wouter Verstraelen
Wouter Verstraelen am 7 Jun. 2019
@Stephen thanks!

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 7 Jun. 2019
There is no automatic way to do that. You can write your own code for the purpose.
filenum = 0;
while true
filenum = filenum + 1;
filename = sprintf('myfilename_%d.mat', filenum);
if ~exist(filename, 'file'); break; end
end
save(filename);
  1 Kommentar
Wouter Verstraelen
Wouter Verstraelen am 7 Jun. 2019
thanks! I'd believe it would be great if in the future there could just be some kind of flag to the save-command though.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Data Types finden Sie in Help Center und File Exchange

Produkte


Version

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by