MATLAB将多个.txt文档存入同一个EXCEL文件的不同Sheet内

本文介绍如何使用MATLAB将多个.txt文件内容导入到同一个Excel文件的独立Sheet中,涉及文件命名规则、路径设定及Excel输出名称的自定义。程序执行效率可能因文件数量和数据量而异,欢迎交流学习。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Author: Kawhi Ray
% Date: 2020/3/29
% Version: 1st
%####################
% File description:
% 将实验过程中所保存的所有.txt文件,按照对应子实验,依次读取并保存到同一个.xls/.xlsx文件的不同工作表内【以方便后续的统一处理】
%********************** Attention【1】!!!!!!!!!! **********************
% 将实验过程中所有采集到的.txt文件,全部复制并保存在当前文件夹目录下
%********************** Attention【2】!!!!!!!!!! ********************** 
% 所有.txt文件的命名必须对应子实验过程,按照升序保存【便于使用dir函数对当前文件夹中的所有txt文件进行批量处理】
% e.g.
%    子实验"1"对应的实验结果保存在"Experimental_1.txt"文件中
%    子实验"2"对应的实验结果保存在"Experimental_2.txt"文件中
%                                    |
%                                   \|/ 
%    子实验"100"对应的实验结果保存在"Experimental_100.txt"文件中
%                   【后面的数字编号必须按照升序排列】
%**********************************************************************
%####################
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%% 程序主体
% 将当前文件夹中的所有.txt文件依次存入同一个xls/xlsx文件中的不同的sheet中
FN1='Experimental_'; %所有.txt文件名主体//完全相同的名称部分//文件名称修改时此处对应修改!!!!!
file=dir('D:\Backup\我的文档\MATLAB\shujuchuli_2020\*.txt');   %获得绝对路径下的所有.txt文件的属性
Ntxt=length(file);   %对当前文件中包含的.txt文件的数目进行统计
Sheet='Sheet';   %定义字符变量Sheet/sheet(只能为两者之一),为将各.txt文件的内容写入同一xls/xlsx文件的不同sheet文件做准备
for i=1:Ntxt
    FN2=[num2str(i) '.txt']; %所有.txt文件名从体//升序排列的数字编号
    FN=strcat(FN1,FN2); %合成.txt文件名
    TEMP=dlmread(['D:\Backup\我的文档\MATLAB\shujuchuli_2020\',FN],' ');   %依据文件名将.txt文件中的内容赋给变量
    num=num2str(i);   %数值转字符串
    gzb{i}=strcat(Sheet,num);   %字符串拼接,构建工作表名称Sheet1\Sheet2\Sheet3......
    xlswrite('Experimental_data.xlsx',TEMP,gzb{i},'A1');   %将.txt文件中的数据放入对应的工作表中(所有工作表隶属于同一个xls/xlsx文件)
end
% ***程序运行结束后会生成名为"Experimental_data.xlsx"的Excel文件,其中包含了整个实验过程中所有子实验结果,各工作表对应各子实验的实验结果***

注:

1. 以上子实验的文件名可以按照自己的设定自行修改 [注意同时修改字符变量FN1  !!!!! ],但后面的数字编号必须按照升序排列!当然也可以降序排列【使用递减循环即可】

2. 文件的绝对路径按照各自matlab的路径自行设定即可!

3. 输出的Excel文件名可按照自己的设定自行修改!

 

       以上程序只是鄙人的一种方法,执行效率会因为.txt文件的数目及其内部数据量的多少而存在差异。方法的不足之处,还请各路大神不吝赐教!大家互相学习交流!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值