save ensure automatic renaming

10 vues (au cours des 30 derniers jours)
Wouter Verstraelen
Wouter Verstraelen le 7 Juin 2019
Modifié(e) : Stephen23 le 7 Juin 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 commentaires
Stephen23
Stephen23 le 7 Juin 2019
Modifié(e) : Stephen23 le 7 Juin 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 le 7 Juin 2019
@Stephen thanks!

Connectez-vous pour commenter.

Réponse acceptée

Walter Roberson
Walter Roberson le 7 Juin 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 commentaire
Wouter Verstraelen
Wouter Verstraelen le 7 Juin 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.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Data Types dans Help Center et File Exchange

Produits


Version

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by