Uigetfile - Is there a neater way of moving my files?

3 views (last 30 days)
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.

Accepted Answer

Image Analyst
Image Analyst on 28 Sep 2015
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).
  15 Comments
Bjorn Gustavsson
Bjorn Gustavsson on 30 Sep 2015
My suggestion is to scrap the regexp, you will sooner or later want to use the functionality on images that doesn't follow the current pattern (IMG_NNN.ext) and then it will break. Instead use the fileparts function - it will separate [the path-string and] the name and the extension regardless of what pattern it follows. Be lazy when possible.
10B
10B on 5 Oct 2015
Thanks Bjorn - I will have a look at the fileparts function. I was unaware of this previously.

Sign in to comment.

More Answers (0)

Categories

Find more on Environment and Settings 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!