Unable to open file with Importdata after dir with subfolders?

1 次查看(过去 30 天)
I've used this simple code before with all of my files in one folder and it worked fine.
However I've modified it by adding ** because I now want to get all of the files in subfolders.
The first part of the code seems to be working, it creates a structure from dir with all of my files.
The problem is the second part does not seem to be working as it normally does. I am receiving the erorr message
"Error using importdata (line 137)
Unable to open file."
I'm guessing there is a modification I need to make because I am now using dir with subfolders, but I'm lost as to what change needs to be made.
My goal is to identify all of the files with a specific name, and store the data from those files in variables.
Thank you.
Eyefiles = dir('**\*SMI*')
Vivefiles = dir('**\*Euler*')
%%
for k = 1:length(Eyefiles)
eyedata{k} = importdata((Eyefiles(k).name))
end
for b = 1:length(Vivefiles)
vivedata{b} = importdata((Vivefiles(b).name))
end

采纳的回答

Walter Roberson
Walter Roberson 2019-2-4
fullfile(Eyefiles(i).folder, Eyefiles(i).name)
to construct the file name
  3 个评论
JM
JM 2019-2-4
Hey Walter,
After running the code successfully with your suggestion, I did notice one weird outcome and I'm not sure why it is happening.
The code works, but on certain iterations of the loop, it seems to actually put more than 1 files worth of data in a given column. So if each column is supposed to contain a 1x30 structure from excel, randomly it seems that some columns will have 1x60, 1x120, etc as if there is extra files being stored.
Hope I am describing it OK. Not sure if this is just a matlab glitch or what, because for a majority of the files it runs fine and puts the appropriate data in.
Walter Roberson
Walter Roberson 2019-2-4
I am not sure off-hand, but I would suggest experimenting with readtable()
Would your files happen to be .xls or .xlsx ? If so I wonder if some of them have multiple sheets?

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 File Operations 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by