Matlab 查找文件

1. 查找文件夹下具有指定文件名的所有路径

会遍历所有的文件夹及子文件夹

matlab 复制代码
function filePath = getAllFilePath(fileDir,filename)
subDirs = dir(fileDir); % 列出当前文件夹中的文件和文件夹
filePath = [];
for i = 1:length(subDirs)
    % 判断是否为文件夹,如果是则递归;如果否,则查找文件
    if subDirs(i).isdir && subDirs(i).name ~= "." && subDirs(i).name ~= ".."
        recursionDir = [subDirs(i).folder, '\', subDirs(i).name];
        filePath = [filePath; string(getAllFilePath(recursionDir,filename) )];
    elseif subDirs(i).name ~= "." && subDirs(i).name ~= ".."
        if length(subDirs(i).name)>=length(filename)
            if subDirs(i).name(end-length(filename)+1:end) == filename
                filePath1 = [subDirs(i).folder, '\', subDirs(i).name];
                filePath = [filePath; string(filePath1)];
            end
        end
    end
end
filePath = unique(filePath);
end

2. 获取文件夹下所有指定后缀的文件

matlab 复制代码
function filepath = getFilesPath(baseDir, ext, findSubfile)
% findSubfile == true: 搜索子文件夹(默认)
% findSubfile == false: 不搜索子文件夹

if nargin == 2  % 判断输入的参数是否为2
    findSubfile = true;
end
if findSubfile
    dirOutput = dir([baseDir '/**/*.' ext]);
else
    dirOutput = dir([baseDir '/*.' ext]);
end
folder = string({dirOutput.folder}');
file = string({dirOutput.name}');
filepath = strcat(folder, '\', file);
end

参考:
获取文件夹下所有指定后缀的文件(包含子文件夹)

相关推荐
__lost6 小时前
MATLAB画出3d的常见复杂有机分子和矿物的分子结构
开发语言·人工智能·matlab·化学·分子结构
__lost12 小时前
MATLAB实现神经网络的OCR识别
神经网络·matlab·ocr
可编程芯片开发15 小时前
基于阶梯式碳交易机制的电制氢综合能源系统热电优化matlab仿真
matlab·能源·阶梯式碳交易·电制氢·热电优化
freexyn18 小时前
Matlab自学笔记五十二:变量名称:检查变量名称是否存在或是否与关键字冲突
人工智能·笔记·算法·matlab
XuX0319 小时前
MATLAB小试牛刀系列(1)
开发语言·matlab
程高兴21 小时前
高压直流输电MATLAB/simulink仿真模型+说明文档
开发语言·网络·matlab
今天吃饺子21 小时前
时滞最大信息系数(MIC)分析,为你的预测模型添砖加瓦,MATLAB免费代码
开发语言·matlab
nwpu0617011 天前
Simulink与C的联合仿真调试
matlab
__lost2 天前
小球在摆线上下落的物理过程MATLAB代码
开发语言·算法·matlab
程高兴2 天前
单相交直交变频电路设计——matlab仿真+4500字word报告
开发语言·matlab