Copyfile/ movefile when filenames are not directly available

2 次查看(过去 30 天)
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!

采纳的回答

Peng Li
Peng Li 2020-3-28
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 个评论
Peng Li
Peng Li 2020-3-29
If you need to create a folder called newFolder, use mkdir('newFolder'); first to create a folder named newFolder at the current directory.

请先登录,再进行评论。

更多回答(1 个)

Walter Roberson
Walter Roberson 2020-3-28
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 个评论
Afzal Mohammed
Afzal Mohammed 2020-3-29
编辑:Afzal Mohammed 2020-3-29
Walter,
ohh my bad, I apologize for creating the confusion, I was trying something and forgot to delete the last line. I know the last line from my code as shown below doesn't make any sense.
newFolder {i} = flagged{i}
Afzal Mohammed
Afzal Mohammed 2020-3-29
Peng Li,
Correct! that is what I was trying to. Your code workd :) Yeyyy!! Much appreciated, thanks!

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Database Toolbox 的更多信息

标签

产品

Community Treasure Hunt

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

Start Hunting!

Translated by