循环遍历具有特定扩展名的文件
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
我需要循环打开许多具有相同扩展名的文件。 示例文件名是: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