我不知道标题是否合适,但我需要导入几个文件,例如25(像info.asd,ina.asd,sdd.asd等文件)。因此在我看来,可以通过for循环导入它们而不是硬编码操作。任何想法如何在matlab中实现列表,所以软件知道要导入什么?
答案 0 :(得分:0)
你可以在没有循环的情况下使用此功能。 sPath是包含文件的路径,sExt是您要列出的文件的扩展名。
function cList = fileList(sPath, sExt)
if nargin == 1
sExt = '.asd';
end
% List files in the given path
stDir = dir(sPath);
tDir = struct2table(stDir);
tFile = tDir(~tDir.isdir, :);
% Keep only file with the right extension
cList = tFile.name;
[~, cList, cExt] = cellfun(@fileparts , ...
cList , ...
'UniformOutput', false);
vIsIni = cellfun(@(x) strcmpi(x, sExt), cExt);
cList = cList(vIsIni);
end