MATLAB: Uigetfile – Is there a neater way of moving the files

directoriesfolder cleanupmove filesuigetfile

Hello Community,
After my script has run I want to do a little housekeeping and save various .mat, .jpg and .fig files to a specific file (that I create with user input slightly earlier in the script). At the moment I create the new folder with this:
mkdir(input('Enter new folder name (same as img count): ', 's'))
then when its time to save the .mat, .jpg and .fig to this newly created folder I use this code:
[filename, pathname, filterindex] = uigetfile( ...
{ '*.mat','MAT-files (*.mat)'; ...
'*.fig;*.fig','figures (*.fig)'; ...
'*.jpg;*.jpg','Jpgs (*.jpg)'}, ...
'Pick a file', ...
'MultiSelect', 'on');
to manually select the relevant .mat, .jpg and .fig files from the dialogue box and basically drag and drop them in the newly created folder and then close the dialogue.
This doesn't seem like a very efficient way of doing this – but I haven't managed to work out another way.
Does anyone have any suggestions on how to improve this workflow?
Regards,
10B.

Best Answer

In your script, set a desired destination folder and use fullfile to save them directly so that there is no need to move them.
desiredFolder = 'c:\whatever';
baseFileName = 'myApp.mat';
fullFileName = fullfile(desiredFolder, baseFileName);
Then do whatever you already to to save or create these files. If you don't use a folder, then they just save to the current directory and you have to move them like you're doing (but don't want to do).