将文件列表导入数组MATLAB

时间:2014-12-11 08:50:43

标签: arrays matlab filelist

我使用UNIX命令在.txt文件中创建了一个文件列表。 我需要通过引用此文件列表在MATLAB上做一些循环。 首先,我坚持将filelist.txt导入数组。 我的filelist.txt包含:

aa121001/121001ABC/1210010000/aa1.txt
aa121001/121001ABC/1210010000/aa2.txt
aa121001/121001ABC/1210010009/aa1.txt
aa121001/121001ABC/1210010009/aa2.txt
aa121001/121001ABC/1210010016/aa1.txt
aa121001/121001ABC/1210010016/aa2.txt
aa121001/121001ABC/1210010024/aa1.txt
aa121001/121001ABC/1210010030/aa1.txt
aa121001/121001ABC/1210010030/aa2.txt
...

在每个aa1.txt或aa2.txt文件中,只有数字而没有字符。 如果我可以将这些字符串导入数组List,我想编写我的程序列表:

for k = 1:length(List)
myFolder = '/Users/LILI1234/Documents/DataSet';
file = fullfile(myFolder,List(k));
data = dlmread(file);
%do something 
end

到目前为止它只适用于一个文件(来自filelist.txt的一行),但是在不同的目录中有很多数据文件,所以我想做一个循环。 如果您有任何想法可以帮助我,请告诉我。 非常感谢!

1 个答案:

答案 0 :(得分:1)

您可以使用List=importdata('filelist.txt')导入文件,然后整个列表将位于 List 单元格数组中。从那时起,您可以List{k}像这样调用每个文件

myFolder = '/Users/LILI1234/Documents/DataSet'; 
for k = 1:length(List)
    file = fullfile(myFolder,List{k}); 
    data = dlmread(file); 
    %do something
end