MATLAB:使用带有文件扩展名的变量来加载文件

时间:2014-08-14 14:48:41

标签: matlab variables load

我正在使用MATLAB

我在自己的目录中有51个文件,所有.out延伸都由一个单独的程序创建,所有文件都编号为050

0.out
1.out
2.out

依此类推50.out

我需要逐个加载每个文件,以便在for循环中对它们进行计算。如果预先设置了目录,我将如何使用count变量加载文件?

%set directiory
cd(......)

%for loop
For count = 0:50,
     data = count.out     *<-----this line* 
     .....

非常感谢!

2 个答案:

答案 0 :(得分:0)

首先使用

生成文件名
fileName = [int2str(count) '.out'];

然后用

打开文件
fid = fopen(fileName, 'r');

加载阶段取决于您要读取的文件类型。假设它是一个文本文件,您可以使用

逐行读取它
while ~feof(fid)
    line = fgetl(fid);
end

或使用更专业的功能(参见http://www.mathworks.it/it/help/matlab/text-files.html)。在for循环结束之前,您必须通过调用

关闭文件
fclose(fid);

答案 1 :(得分:0)

另一个很好的方法是使用dir函数

http://www.mathworks.co.uk/help/matlab/ref/dir.html

a = dir('c:\ docs * .out')

将为您提供一个结构,其中包含您指向的目录中的* .out文件的所有信息(或路径)。然后你可以一点一点地循环它。使用fopen或csvread或任何你想要使用的文件读取功能。