How can I add a time stamp to a variable name?

8 views (last 30 days)
Hi community,
I wanted to know how if I can add time stamps to a variable name. I want to create an standalone application and at the end a variable is saved in a .mat file. The file is named by the user, but I do not want to let the user pick the variable name. I would rather want to add a time stamp to the variable name. Is there a way to do that?
Everytime I try something the variable gets overwritten with the time stamp and not added to the variable name.
Is this even possible or do I have to think of a diiferent approach?
Thanks in advance!
formatDescr = 'ddmmmyyyy_HHMMSS';
datestring = datestr(now, formatDescr);
elseif strcmp(app.regDirection, 'CBCT2CT') == true
warpedCBCT = strcat('warpedCBCT', datestring);
atlasFile = uiputfile;
save(atlasFile, 'warpedCBCT');
end
  3 Comments
Dende
Dende on 4 May 2022
Okay I understand that, but I wanted to make it simpler for the user.
So naming the variable through an input from the user (just like naming the file) would be the best option?
I decided against this option because I did not want the user to have to make too many inputs.
Stephen23
Stephen23 on 4 May 2022
"So naming the variable through an input from the user (just like naming the file) would be the best option?"
That would be about the worst option.
What happens when your user selects the variable name "123 + 567" or "! format C:\" ?

Sign in to comment.

Answers (1)

Walter Roberson
Walter Roberson on 4 May 2022
warpedCBCT = strcat('warpedCBCT', datestring);
savestruct = struct(warpedCBCT, DataToSave);
[atlasFile, filepath] = uiputfile();
if ~ischar(atlasFile)
return; %user cancel
end
filename = fullfile(filepath, atlasfile);
save(filename, '-struct', 'savestruct', '-append')
Each time you save to the same file, a new variable will be added to it.
The keyword -struct tells save not to save "savestruct" as a structure, but to instead save each field in the structure as an individual variable.
  4 Comments
Dende
Dende on 4 May 2022
Thanks for the links. I didn't know about the xy problem.
Next time I will be clearer!
That's actually pretty obvious but I wasn't aware of that.
Walter Roberson
Walter Roberson on 4 May 2022
Using the -append flag is not required for save -struct to work.

Sign in to comment.

Categories

Find more on Programming in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!