如何在for循环中放置转换操作?

时间:2013-07-31 10:00:31

标签: matlab for-loop file-conversion

以下是将 .tim 文件转换为某个特定文件的 ascii 文件的代码。但我需要的是转换500个文件( .tim )。我还需要将SAME名称中的 .ascii 文件保存为所有500个文件的 .tim 文件名,如下所示。

bin=fopen('file_01.tim','r'); 
 ascii = fread(bin, [43,21000], 'float32'); 
 data_values=ascii';
  dlmwrite('file_01.xls', data_values, 'delimiter', '\t', ...
     'precision', '%.6f','newline','pc');

使用“for循环”进行转换并使用 tim 的相同名称保存 ascii 文件,这是我的第一个想法,但我不知道怎么样。

1 个答案:

答案 0 :(得分:1)

您可以使用dir获取文件夹中所有文件名的列表,然后继续使用'file_01.tim'替换[D(ii).name]

e.g。

D = dir('*.tim');

for ii = 1:size(D,1)
    bin=fopen(D(ii).name,'r');
    %your processing etc
    savename = [strtok(D(ii).name,'.'), '.xls']; %Change the file ext from .tim to .xls
    dlmwrite(savename, ...