1.批量读取.mat文件
当只读取一个.mat文件时,用load函数可直接加载,但要读取某文件中几百个上千个已保存的无规律的文件时一个个文件加载则效率低。为解决该问题,可使用以下代码解决。
%读取你对应地址中所有的.mat文件,并用files保存文件信息。
files = cellstr(ls(['G:\研究成果\自己代码\数据保存\*.mat']));
m = size(files,1);
for i = 1:m
%读取的files为带有.mat的文件名,因此,使用regexp()对其进行符号分割,以.为分割点
S = regexp(files{i,1}, '\.', 'split');
% 将读取的文件名给到新变量,主义后面一定有;
eval([cell2mat(S(1,1)) '= cell2mat(struct2cell(load([files{i,1}])));']);
end
- 说明:如果你的所有.mat文件中不存在由原同一个变量名保存的加后缀的文件,可不用改方法,否则可用该方法进行重新数据读取。
- 例如 在同一个程序中改变某一参数而使得其中F变量改变,需要使用改变参数后不同的F,通常会在F后加后缀,例如,F_1,F_2…,这样读取文件后最终显示的只有一个F,不会村故障F_1,F_2,该方法可解决此问题