大基数文件整理-Matlab

基于文件名称整理分类移动至单独文件夹内

        对于大量具有相同特性的文件名称,不想一个个移动、新建文件夹,例如下图,将相同姓名资料放入同一姓名文件夹,较为繁琐且无聊。

        因此利用了些基础实用函数,整理下运用Matlab移动文件整理方法:

%%  清理缓存
clear all;close all
%%  按要求填入路径及文件名
path1='D:\WeChat\WeChat Files\wxid_sbzimsh4npxo22\FileStorage\File\2022-09'%改为学员出勤名单所在路径
namelist1='22SYPS0112_课节1_出勤考核成绩公示.xlsx'%改为出勤考核文件名
path2 = 'D:\桌面文件夹\2';%文件夹保存路径
path3 = 'D:\桌面文件夹\文件重命名';%审核资料文件路径
%%  运行
[num,txt,raw]=xlsread(strcat(path1,'\',namelist1))
for i=3:length(raw)
    num_name(i-2)=strcat(raw(i,1),'+',raw(i,2))
end
for i = 1:length(num_name)
    status=mkdir(path2,char(num_name(i)));  % 在指定的文件路径下以变量名为名字创建新的文件夹
end
files = dir(path3);
oldName = cell(length(files)-2,1);
for i = 3:length(files)
    oldName{i-2} = files(i).name;%得c组   
end
for i=1:length(num_name)
    mid2=strsplit(num_name{i},'+')
    Mid1=cell(mid2(1))
    Mid2=cell(mid2(2))
    for j=1:length(oldName)
        mid1=strsplit(oldName{j},'_'); %使用‘_‘分隔符对审查材料文件名进行分隔
        if strcmp(char(mid1(2)),Mid2) %取第二个分隔字段和文件夹的名字进行比较
            DST_PATH_t = [path2 ,'\',char(num_name{i}),'\'];
            movefile([path3,'\',char(oldName(j))],DST_PATH_t);
        end
    end

end 

 聊做笔记~

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值