MATLAB-创建多个文件的列表

MATLAB-创建多个文件的列表,matlab,Matlab,我不知道标题是否合适,但我需要导入多个文件,例如info.asd、ina.asd、sdd.asd等25个文件。因此,我认为可以通过for循环导入这些文件,而不是硬编码操作。你知道如何在matlab中实现这个列表,这样软件就知道要导入什么了吗?使用这个函数,你可以不用循环就可以完成。sPath是包含文件的路径,sExt是要列出的文件的扩展名 function cList = fileList(sPath, sExt) if nargin == 1 sExt = '.asd

我不知道标题是否合适,但我需要导入多个文件,例如info.asd、ina.asd、sdd.asd等25个文件。因此,我认为可以通过for循环导入这些文件,而不是硬编码操作。你知道如何在matlab中实现这个列表,这样软件就知道要导入什么了吗?

使用这个函数,你可以不用循环就可以完成。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

我想循环它们以获得一些绘图,所以for循环可以对tasksOk和tasksOk都执行,但是您必须知道在初始化for循环中的计数器变量之前必须循环多少次。你可以使用这个函数来知道你有多少文件,然后启动循环来获得绘图。我想它可以将计数器设置为lengthlist。