如何在Matlab中运行与许多文件(同一目录中的不同文件名)相同的代码?

时间:2011-07-01 16:21:01

标签: matlab automation

我有一千个.dat文件可以使用相同的程序运行。是否有更快的方式或脚本自动运行它而不是逐个运行它们? .dat文件具有不同的文件名。

该计划类似于:

fid=fopen('**abd**.dat');
C=textscan(...);
...
save('**abd**.txt',data);

abd是文件名。我有数千个文件名不同的文件。将这些文件名复制并粘贴到程序中并运行它有点烦人。任何人都有更快的方式或代码吗?

2 个答案:

答案 0 :(得分:6)

你可以使用“dir”来获取文件列表,然后像这样循环处理它们。

fns = dir('*.dat');
for i = 1:length(fns)
    fid = fopen(fns(i).name);
    C = textscan(...);
    fclose(fid);
    save([fns(i).name,'.dat'],data);

end

答案 1 :(得分:1)

重新思考问题。编写一个脚本来读取文件名和字符串的文本文件。然后你有2个文件,而不是数千个。