Copyfile/ movefile when filenames are not directly available
2 views (last 30 days)
Show older comments
Afzal Mohammed
on 28 Mar 2020
Commented: Afzal Mohammed
on 29 Mar 2020
Hello Everyone,
I have two .xlsx files in a folder, I want to copy/ move those .xlsx files to a different folder but the user is not aware of file names which are stored in a workspace variable of the same Matlab program.
As shown below: 'flagged' is a workspace variable of my program which has file names. I want to copy/ move those specific files to a separate folder.
I tried following but it's not working
copyfile flagged(i).name newFolder
Please advise.
Thanks!
Accepted Answer
Peng Li
on 28 Mar 2020
flagged is a cell so you couldn’t access it using parentheses and dot motion.
flagged{i} is your ith element in flagged. For example flagged{1} will be myFile.xlsx. If you want to move it somewhere you may also need the full directory as well unless it’s in the current directory.
3 Comments
Peng Li
on 29 Mar 2020
If you need to create a folder called newFolder, use mkdir('newFolder'); first to create a folder named newFolder at the current directory.
More Answers (1)
Walter Roberson
on 28 Mar 2020
Assuming that newFolder is the name of a variable that stores the destination folder name:
copyfile(flagged(i).name, newFolder)
However I would recommend that you should be using fullfile() and should be using exist() to test to be sure that the file exists before you attempt to copy it.
5 Comments
See Also
Categories
Find more on Database Toolbox in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!