MATLAB 文件处理(创建、解压、删除、提取)

在所有m文件中进行字段检索

查找文件 - MATLAB & Simulink - MathWorks 中国

新建文件夹mkdir

% 定义保存路径
savepath = 'D:\2024\';

% 如果保存路径不存在,则创建该路径
if ~exist(savepath, 'dir')
    mkdir(savepath)
end

 解压文件gunzip,删除文件delete

% 指定的目录路径
sl_dir

% 获取目录下所有的文件夹
folders = dir(sl_dir);

% 从第3个文件夹开始(因为前两个是 . 和 ..)
for i = 3:size(folders, 1)

    % 获取文件夹的完整路径
    file_path = fullfile(folders(i).folder, folders(i).name);
    
    % 保存文件夹的名字
    save_name = folders(i).name;                               
    
    % 获取指定路径下的所有.gz文件
    namelist = ls([file_path, '\*.gz']);
    
    % 如果namelist非空,则进行解压操作
    if ~isempty(namelist)                                     
        % 解压所有的.gz文件到extrac_dir目录下
        gunzip(fullfile(file_path, string(namelist)), extrac_dir);
    end
    
    % 显示成功解压的信息
    disp(['success folder ', save_name]);
                   
end

% 获取解压目录下的所有.dat文件
    namelist2 = ls([extrac_dir, '\*.dat']);

% 删除extrac_dir目录下所有的.dat文件
    delete([extrac_dir, '\*.dat']);    

提取图片的名称(ls,split,extractBefore)

% 定义图片文件路径
picpath = 'D:\path\';
pic_name=ls([picpath,'\*.png']);

% 示例文件名列表
pic_name= {
    'image_123_part_456.png'
    'image_789_part_012.png'
    'photo_321_part_654.png'};

% 初始化pic_cur和pic_num数组
pic_cur = [];
pic_num = [];

for i = 1:size(pic_name, 1)
    
    temp = split(pic_name(i, :), '_');% '_'分割文件名

    pic_cur{i, 1} = str2double(temp{2});
    pic_num{i, 1} = str2double(extractBefore(temp{4}, '.'));% 提取'.'前面部分
end

% 显示提取结果
disp('pic_cur:');
disp(pic_cur);

disp('pic_num:');
disp(pic_num);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值