一、新建MATLAB script(.m文件):readall_mat.m
二、代碼如下:
function data = readall_mat(path)
% READALL_MAT 讀取所有文件
% DATA = READALL_MAT(PATH)讀取路徑PATH下的所有mat文件中的數據賦給data
% mat文件中含有多個數據項
% 輸出cell格式以免各數據項長度不同
% 輸出data后若要使用data中的內容請使用data{index}訪問
%
% 原始版本:V1.0 作者:賈鄭磊 時間:2018.03.05
A = dir(fullfile(path,'*.mat'));
% 讀取后A的格式為
% name -- filename
% date -- modification date
% bytes -- number of bytes allocated to the file
% isdir -- 1 if name is a directory and 0 if not
% ???--都顯示為7.3702e+05標識
A = struct2cell(A);
num = size(A);
for k =0:num(2)-1
x(k+1) = A(num(1)*k+1);
end
m = 1;
for k = 1:num(2)
newpath = strcat(path,'\',x(k));
temp = load(char(newpath));
temp = struct2cell(temp);
num2 = size(temp);
for l = 1:num2(1)
data{m} = temp{l};
m = m+1;
end
end
% [EOF] readall_mat.m
三、調試過程用到的關鍵詞:
1.dbstop in readall_mat at 35(或者手動添加):加斷點
2.data = readall_mat('E\mydata');:運行script
3.dbcont:調試至下一斷點
4.變量名:查看當前變量內容
四、運行結果:
將文件路徑下的多.mat文件的多變量按文件順序導入至data中
五、其他輔助操作
1.執行.m文件:在命令窗口輸入函數名(參數);
2.中斷執行中的.m文件:在命令窗口Ctrl+C