move file which name is changing iteratively in a for loop

3 views (last 30 days)
Hello all,
I am generating an array in a loop where i apply a certain number of operations to get my Output_array. I save my Output_array under a file name that has to change at each iteration. I need to move the saved file in a different folder than the folder i saved it in.
So far, i tried movefile and copyfile, but the file name has to be a character vector or string scalar. I ended up with the unesthetic solution of indicating the path before the operation and where i want the file the be saved in:
for n=1:size(file_list,1)
cd(filePath)
(... my operations)
Output_array=final_array;
newfilename= sprintf('output_%i.dat',n);
cd(filePath_save)
dlmwrite(newfilename,Output_array,'delimiter','\t'); % i need to save with this format
end
It works, but i was wondering if there would be a better way to do.
Thank you!
A.S
  5 Comments
Stephen23
Stephen23 on 19 Jan 2022
If moving the files is required then at least use FULLFILE and absolute/relative filenames.
Avoid CD.
Au.
Au. on 20 Jan 2022
I didn't understand that fullfile could save in a different folder by reading the documentation - i thought it was another way to indicate a relative path.
Thank you Stephen and Simon!

Sign in to comment.

Answers (0)

Categories

Find more on File Operations in Help Center and File Exchange

Products


Release

R2017b

Community Treasure Hunt

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

Start Hunting!