Matlab 循环浏览具有特定扩展名的文件
我需要在一个循环中打开许多具有相同扩展名的文件。 示例文件名有: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等 <>基本上,文件名的第一部分和最后部分是相同的,但中间的东西发生了变化。 我试过:Matlab 循环浏览具有特定扩展名的文件,matlab,loops,filenames,Matlab,Loops,Filenames,我需要在一个循环中打开许多具有相同扩展名的文件。 示例文件名有: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')需要撇号作为字符串传递,而星号作为文件名的通配符。我认
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\u r.mat
而不是c1*t\u r*.mat
谢谢您的建议。它起作用了!但是,如果例如,我在“t_”之后有一个很长的扩展名,并且我不想复制所有很长的文件名,该怎么办?请检查我的解决方案。@dede我真的不知道您需要做什么。“你能解释得更清楚些吗?”阿列克斯莫加维罗,你完美地回答了我的问题-谢谢。我只是在想,我只是在想是否可以举个例子,我会有这样的一些东西,比如说,我只是想知道我是否会有这样的东西,比如我只是想知道我是否会有这样的东西,比如我是在我只是想,比如我是在我是在我是在我是在我是在我是在想,我是在我是在想,我是在想我是我是在想我是我是我是我是我是想你们们的UUU u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u z_y_blabla.mat'等,在't_'之后有一个很长的扩展。在这种情况下,Ext='c1_*(星号)t_*(星号).mat'是否合适?