Matlab读取文件夹下所有文件夹的文件名--附代码与图

具体步骤:

1. 测试用例文件夹:

 2.dir()函数获取路径package_Path下所有文件信息,name中多了‘.’和‘..’,需要通过第4步进行排除

contents = dir(package_Path)

3.初始化一个空的单元格数组packageNames来存储文件夹名称

package_Name = {};

4.遍历目标文件夹中的所有项,排除‘.’与‘..’文件名

for i = 1:numel(contents)
    % 检查当前项是否是文件夹并且不是特殊目录('.' 和 '..')
    if contents(i).isdir && ~strcmp(contents(i).name, '.') && ~strcmp(contents(i).name, '..')
        package_Name = [package_Name, contents(i).name];
    end
end

最终获取到的文件夹名称保存格式为cell格式

函数代码:

function [package_Name] = scanPackage_function(package_Path)
% 程序用于指定路径下文件夹的文件名并返回
% package_Name:返回值,cell格式
% package_Path:为指定路径


% 1.dir()获取路径下所有文件信息
contents = dir(package_Path)

% 2.初始化一个空的单元格数组packageNames来存储文件夹名称
package_Name = {};

% 3.遍历目标文件夹中的所有项
for i = 1:numel(contents)
    % 检查当前项是否是文件夹并且不是特殊目录('.' 和 '..')
    if contents(i).isdir && ~strcmp(contents(i).name, '.') && ~strcmp(contents(i).name, '..')
        package_Name = [package_Name, contents(i).name];
    end
end

end

实例代码:

clc;
clear all;
close all;

package_Path = "L:\数据集\测试文件夹";
package_Name = scanPackage_function(package_Path);

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在 Matlab读取文件夹下片,可以使用函数 dir 和 imread。 首先,使用 dir 函数获取文件夹下所有文件的信息,例如: ``` folder = 'path/to/your/folder'; file_list = dir(fullfile(folder, '*.jpg')); ``` 其中,fullfile 函数用于构造完整的文件路径,'*.jpg' 表示只读取 jpg 格式的片文件。 然后,使用循环读取每个片文件: ``` for i = 1:length(file_list) file = fullfile(folder, file_list(i).name); image = imread(file); % do something with the image end ``` 其中,imread 函数用于读取片文件。读取出来的片数据存储在变量 image 中,可以进行后续的处理。 ### 回答2: 在MATLAB读取文件夹下片可以使用dir函数和imread函数实现。 首先,可以使用dir函数获取指定文件夹下的所有文件信息,包括片文件。例如,下面的代码会获取当前文件夹下所有以'.jpg'为扩展名的文件: ```MATLAB folder = './images/'; % 指定文件夹路径 files = dir(fullfile(folder, '*.jpg')); % 获取所有以'.jpg'为扩展名的文件信息 ``` 接下来,可以使用imread函数逐个读取这些片文件。下面的代码将循环遍历所有文件并读取片: ```MATLAB for i = 1:length(files) % 遍历所有文件 filename = fullfile(folder, files(i).name); % 获取文件路径 img = imread(filename); % 读取片 % 对片进行进一步操作或分析 end ``` 在读取片后,可以进行进一步的操作或分析,例如显示片、调整像亮度对比度、提取像特征等。 值得注意的是,上述代码假设文件夹下只包含了以'.jpg'为扩展名的片文件。如果还有其他片格式(如'.png'、'.bmp'等),需要相应地调整dir函数中的匹配模式或在循环中添加其他的处理逻辑。 通过以上步骤,你便可以利用MATLAB读取指定文件夹下的片,并在此基础上进行你所需的操作。 ### 回答3: 在MATLAB中,可以使用dir函数来读取文件夹下片。以下是一种利用MATLAB读取文件夹下片的简单方法: 1. 使用MATLAB的dir函数获取当前文件夹下的所有文件和文件夹的信息,将结果存储在一个结构体数组中。 2. 创建一个空的单元格数组,用于存储所有片的文件名。 3. 使用for循环遍历dir函数获取的结构体数组中的每个文件和文件夹。 4. 使用fileparts函数获取文件的扩展名,并判断是否为片文件(如.jpg、.png等)。 5. 如果是片文件,则使用imread函数读取片,并将其文件名存储到单元格数组中。 6. 循环结束后,可以通过访问单元格数组中的元素获取所有片的文件名。 以下是一个示例代码: ```matlab % 指定要读取的文件夹路径 folder = '文件夹路径'; % 使用dir函数获取文件夹下的所有文件和文件夹的信息 files = dir(folder); % 创建一个空的单元格数组,用于存储所有片的文件名 image_files = {}; % 遍历文件夹下的所有文件和文件夹 for i = 1:length(files) % 获取文件的扩展名 [~, ~, ext] = fileparts(files(i).name); % 判断是否为片文件 if strcmpi(ext, '.jpg') || strcmpi(ext, '.png') || strcmpi(ext, '.jpeg') % 使用imread函数读取片 img = imread(fullfile(folder, files(i).name)); % 将片的文件名存储到单元格数组中 image_files = [image_files, files(i).name]; end end % 访问单元格数组中的元素获取所有片的文件名 for i = 1:length(image_files) disp(image_files{i}); end ``` 通过上述代码,可以读取指定文件夹下的片,并将片的文件名存储在单元格数组image_files中。可以通过访问该数组的元素获取所有片的文件名。请将代码中的"文件夹路径"替换为实际的文件夹路径。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值