用matlab循环,实现批量提取多个文件夹内的多个txt文档中的数据,处理后,以excel格式批量保存到多个文件夹内。整体代码如下:(每个文件夹内txt文档个数可以不同)
clear all;clc;
filepath=strcat('F:\Raw_data'); %大文件夹路径
dirlist=dir(filepath); %读取所有文件夹
n_file=size(dirlist,1)-2; %减去两个默认的空白文件夹数量
for jjjj=1:n_file
jname=(jjjj-1)*10; %文件夹名字中变化的部分 从T_0_A ,T_10_A 直到T_90_A 中0变成了90
j_name=num2str(jname); %转格式
Path=strcat('F:\Raw_data\','T_',j_name,'_A'); %提取txt文件时的 子文件夹路径
filefile=dir(fullfile(Path,'*.txt')); %打开所有txt文件详细信息
filenames={filefile.name}'; %提取txt文件名
n_txt=size(filenames,1); %提取txt文件数量
for iiii=1:n_txt
%路径组装 char(filefile(iiii).name)
iname=(iiii-1)*15;
mmmm_=num2str(iname); %赋值命名字符
filepaths=[Path,'\','V',j_name,'_L',mmmm_,'.txt']; %txt具体路径
ephemeral_data=readmatrix(filepaths); %txt文件数据提取
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%下面数据处理部分按照自己需求编辑
save_data1=ephemeral_data+iname;
save_data2=ephemeral_data-jname;
save_data=save_data1+save_data2; %这部分数据处理根据自己需要编写修改
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%下面是保存为excel文件
Path_save=strcat('F:\Result_data\','T_',j_name); %保存时的 子文件夹路径
nnnn_0=strcat(Path_save,'\','V',j_name,'_L',mmmm_,'.xlsx'); %赋值路径字符
xlswrite(nnnn_0,save_data);
end %txt文件循环
end %结果文件夹
文件详细内容如下:
需要提取的是’F:\Raw_data‘路径下的多个文件夹:
每个文件夹内有数量不等的txt文档, 提取数据并处理后分别导入到不同的文件夹中,如下几个文件夹:
T_0_A文件夹内有一个txt文档如下:
其余文件夹内的txt文档分别有 2个 3个 和4个:
导出的不同文件夹内的excel的文件如下: