如何在Octave/MATLAB的另一个文件夹中获取对应的文件?
How to get corresponding file in another folder in Octave/MATLAB?
在我的一个文件夹中(比如 Folder01)有像 "IGN_A.txt"、"IGN_B.txt"、"IGN_C.txt"......
这样的文件
在另一个文件夹(比如 Folder02)中,Folder01 中的相应文件 "IGN_A.txt" 中有 "sim_IGN_A_M01.txt"、"sim_IGN_A_M02.txt"、"sim_IGN_A_M03.txt" 等文件。
同理,Folder01中对应的文件"IGN_B.txt","sim_IGN_B_M01.txt"、"sim_IGN_B_M02.txt"、"sim_IGN_B_M03.txt"。
如何从这些文件夹中获取相应的文件。
例如,我想获得 "IGN_A.txt" 以及 "sim_IGN_A_M01.txt"、"sim_IGN_A_M02.txt"、"sim_IGN_A_M03.txt"。
这里。我添加了我的代码,它只能得到 "IGN_A.txt" 和 "sim_IGN_A.txt"。
Folder01 = 'Home/A1';
Folder02 = 'Home/A2';
%Going Throuh all the Folder01 files
Allfiles_Folder01 = dir(fullfile(Folder01, '*IGN*.txt'));
for k = 1:length(Allfiles_Folder01)
fullFileName = fullfile(Folder01, Allfiles_Folder01(k).name);
READ_Folder01=dlmread(fullFileName,'',2,0);
fullFileName_Sim = fullfile(Folder02, strcat('sim_',Allfiles_Folder01(k).name))
READ_Folder02=dlmread(fullFileName_Sim,'',1,0);
end
如果命名约定与您提供的一致,我的建议是:
% Get all filenames from Folder01 in cell array.
Allfiles_Folder01 = dir(fullfile(Folder01, '*IGN*.txt'));
Allfiles_Folder01 = {Allfiles_Folder01.name}
% Iterate all filenames from Folder01.
for k = 1:numel(Allfiles_Folder01)
% Cut file extension from current filename.
filename = Allfiles_Folder01{k};
filename = filename(1:end-4);
% Get all filenames from Folder02 with specific search string in cell array.
Allfiles_Folder02 = dir(fullfile(Folder02, strcat('*', filename, '*.txt')));
Allfiles_Folder02 = {Allfiles_Folder02.name}
% Do stuff with filenames from Folder02 corresponding to filename from Folder01.
% ...
% ...
end
在我的一个文件夹中(比如 Folder01)有像 "IGN_A.txt"、"IGN_B.txt"、"IGN_C.txt"......
这样的文件在另一个文件夹(比如 Folder02)中,Folder01 中的相应文件 "IGN_A.txt" 中有 "sim_IGN_A_M01.txt"、"sim_IGN_A_M02.txt"、"sim_IGN_A_M03.txt" 等文件。
同理,Folder01中对应的文件"IGN_B.txt","sim_IGN_B_M01.txt"、"sim_IGN_B_M02.txt"、"sim_IGN_B_M03.txt"。
如何从这些文件夹中获取相应的文件。 例如,我想获得 "IGN_A.txt" 以及 "sim_IGN_A_M01.txt"、"sim_IGN_A_M02.txt"、"sim_IGN_A_M03.txt"。 这里。我添加了我的代码,它只能得到 "IGN_A.txt" 和 "sim_IGN_A.txt"。
Folder01 = 'Home/A1';
Folder02 = 'Home/A2';
%Going Throuh all the Folder01 files
Allfiles_Folder01 = dir(fullfile(Folder01, '*IGN*.txt'));
for k = 1:length(Allfiles_Folder01)
fullFileName = fullfile(Folder01, Allfiles_Folder01(k).name);
READ_Folder01=dlmread(fullFileName,'',2,0);
fullFileName_Sim = fullfile(Folder02, strcat('sim_',Allfiles_Folder01(k).name))
READ_Folder02=dlmread(fullFileName_Sim,'',1,0);
end
如果命名约定与您提供的一致,我的建议是:
% Get all filenames from Folder01 in cell array.
Allfiles_Folder01 = dir(fullfile(Folder01, '*IGN*.txt'));
Allfiles_Folder01 = {Allfiles_Folder01.name}
% Iterate all filenames from Folder01.
for k = 1:numel(Allfiles_Folder01)
% Cut file extension from current filename.
filename = Allfiles_Folder01{k};
filename = filename(1:end-4);
% Get all filenames from Folder02 with specific search string in cell array.
Allfiles_Folder02 = dir(fullfile(Folder02, strcat('*', filename, '*.txt')));
Allfiles_Folder02 = {Allfiles_Folder02.name}
% Do stuff with filenames from Folder02 corresponding to filename from Folder01.
% ...
% ...
end