MATLAB中获取一个文件夹下所有文件夹的名字

时间:2022-09-26 05:49:02

需要写一个MATLAB的小程序,其中需要指定一个文件夹,返回这个文件夹下所有文件夹的名字,以及文件夹的个数。

代码如下:

function [names,class_num] = GetFiles()
files = dir('data\多类样本\');

size0 = size(files);
length = size0(1);
names = files(3:length);
class_num = size(names);
end

结果:

MATLAB中获取一个文件夹下所有文件夹的名字

电脑上文件夹目录: data->多类样本->1\2\3\4\5,为5个文件夹。但是返回的files变量中有7个路径。MATLAB中获取一个文件夹下所有文件夹的名字
前两个可以忽略,用dir命令,在matlab中因为采用了类似于linux的文件结构,所以会产生前面2个路径。
最后获取files的第3到7行赋值给names变量后的结构如下:
MATLAB中获取一个文件夹下所有文件夹的名字

总函数:

function [names,class_num] = GetFiles(SamplePath1 )
SamplePath1 = 'data\sample\';

files = dir(SamplePath1);
size0 = size(files);
length = size0(1);

for i=3:length;
fileName = strcat(SamplePath1,files(i,1).name);
names(:,:,i-2) = fileName;
end
class_num = size(names);
end