我正在开发一个程序,我在几个目录中按日期专门组织数据。我试图从每个单独的目录中提取数据而不覆盖任何东西,也不必编写目录(很长)31次(每月一次),所以我可以每月编译一次。是否可以为此编写for循环?如果是这样,最简单的方法是什么?谢谢!
例如:
我想离开:
dir\08JUN\2627N.mat
到
dir\09JUN\2627N.mat
等等。
答案 0 :(得分:0)
您可以将dir
函数与isdir
选项一起使用,仅检索 dir 文件夹中的目录并循环浏览这些目录,读取2627N.mat文件
out = dir('dir'); % List of directories and files in your dir directory
isub = [out(:).isdir]; % Retrieving directories indexes
subdirectories = {out(isub).name}'; % Converting indexes into logical vector
subdirectories(ismember(subdirectories,{'.','..'})) = []; % Removing '.' and '..'
% Looping through DDMMM subdirectories
for nsub=1:numel(subdirectories)
% Loading file into workspace
load(fullfile(dir,subdirectories{nsub},'2627N.mat'));
end