如何在Octave/Matlab的另一个文件夹中获取相应的文件



在我的一个文件夹(例如folder01)中,有诸如" ign_a.txt"," ign_b.txt"," ign_c.txt" .........

在另一个文件夹中(例如folder02),有诸如" sim_ign_a_m01.txt"," sim_ign_ign_a_m02.txt"," sim_ign_ign_a_m03.txt"的文件,用于相应的文件" IGN_A.TXT"。

类似地," sim_ign_ign_b_m01.txt"," sim_ign_ign_b_m02.txt"," sim_ign_ign_b_m03.txt",用于相应的文件" Ign_b.txt",in folder01中。

如何从这些文件夹中获取相应的文件。例如,我想与" sim_ign_a_m01.txt"," sim_ign_a_m02.txt"," sim_ign_ign_a_m03.txt"获得" ign_a.txt"。这里。我添加了我的代码,该代码只能与" sim_ign_a.txt"一起获得" 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

最新更新