循环遍历具有特定扩展名的文件

Loop through files with specific extension

我需要循环打开许多具有相同扩展名的文件。 示例文件名是:c1_p1_t_r.mat、c1_p3_t_r.mat、c1_p6_t_r.mat、c1_p7_t_r.mat、c1_p10_t_r.mat 等

所以基本上,文件名的第一部分和最后一部分是相同的,但中间的部分发生了变化。

我试过:

Ext = 'c1_*t_r*.mat';
files = dir(Ext);

但它不起作用。任何建议将不胜感激。

使用files = dir('*.Ext'); 您需要撇号将其作为字符串传递,星号作为文件名的通配符。我认为在这里传递多个星号是问题所在。您可能会求助于将变量名称创建为完整字符串,以防它们相似:

for ii = 1:NumberOfFiles
    filename = sprintf('c1_p%dt_r.mat',ii);
    %//load file with created name
end

查看您共享的文件名,您应该使用 c1*t_r.mat 而不是 c1*t_r*.mat