matlab 将txt导入excel,[转载]MATLAB 批量导入excel和txt文件的方法
将一个文件目录下所有的文件名字全部倒入到一个文件中,除了使用ls函数以外,还可以使用
file=dir('C:UsersAdministratorDesktopMATLAB数据的导入导出以及试验的数据*.xls');
filename={file.name}'
关注一下dir命令(本质是DOS命令)
%1)是使用matlab的texetread函数批量导入里面全部是纯数值的文本
%
getfilename=ls('C:UsersAdministratorDesktopMATLAB数据的导入导出以及试验的数据MATLAB批量导入文件*.txt');
% filename = cellstr(getfilename);
% %将字符型数组转换为cell型数组,相当于str2cell,但是matlab中没有后面一个函数
% num = length(filename);%得到所有txt文件的个数
% stock(num) =
struct('Name',filename(num),'Data',textread(filename{num}));
% %使用struct关键字建立结构体
% %注意filename(num)与filename{num}所得到的结果是不同的,前者有一对''
% for ii=1:num-1
% stock(ii) =
struct('Name',filename(ii),'Data',textread(filename{ii}));
% end
%注意到这里面的结构体数组不需要提前声明,通过循环便可以建立起来
%2)使用xlsread批量导入excel文件,xlsread可以导入xlsx类型的文件
getfilename=ls('C:UsersAdministratorDesktopMATLAB数据的导入导出以及试验的数据MATLAB批量导入文件*.xlsx');
filename = cellstr(getfilename);
%将字符型数组转换为cell型数组,相当于str2cell,但是matlab中没有后面一个函数
num = length(filename);%得到所有txt文件的个数
[data,text]=xlsread(filename{num});
stock{num}={filename{num},data,text};
%注意{}是用来建立元胞数组的,stock名字后面跟的是{},xlsread(filename{num})默认只返回数值型的数据
%注意filename(num)与filename{num}所得到的结果是不同的,前者有一对''
for ii=1:num-1
[data,text]=xlsread(filename{ii});
stock{ii}={filename{ii},data,text};
end
%3)导入text文本里面既有数值也有字符串,这个相对来说有些麻烦
getfilename=ls('C:UsersAdministratorDesktopMATLAB数据的导入导出以及试验的数据MATLAB批量导入文件字符串与数值夹杂的文本文件*.txt');
filename = cellstr(getfilename);
%将字符型数组转换为cell型数组,相当于str2cell,但是matlab中没有后面一个函数
filenum = length(filename);%得到所有txt文件的个数,当心变量名不要重复了
r=0;
x=0;
fid = fopen(filename{filenum},'rt');
% Loop through data file until we get a -1 indicating EOF
while(x~=(-1))
x=fgetl(fid);
r=r+1;
end
r = r-1;
disp(['Number of rows = ' num2str(r)])
%注意文本中的空行也会引起行数的增加。
frewind(fid);
for i = 1:r
name = fscanf(fid,'%s',1);% Filter out string at beginning of
line
num = fscanf(fid,'%f %f %f %f %f %fn',6)'; % Read in numbers
if(i==1)
names = name; % Add 1st text string
result = num; % Add 1st row
else
names = char(names,name); % Add next string
result = [result;num]; % Add additional rows
end
end
%stock{filenum} = {filename{filenum},result,names};
stock(filenum) =
struct('Name',filename(filenum),'Data',result,'time',names);
fclose(fid);
%使用元胞数组和结构体的数组的方法均可以实现,要注意实现的方式上有略微的差异
%使用struct关键字建立结构体
%注意filename(num)与filename{num}所得到的结果是不同的,前者有一对''
for ii=1:filenum-1
r=0;
x=0;
fid = fopen(filename{ii},'rt');
% Loop through data file until we get a -1 indicating EOF
while(x~=(-1))
x=fgetl(fid);
r=r+1;
end
r = r-1;
disp(['Number of rows = ' num2str(r)])
%注意文本中的空行也会引起行数的增加。
frewind(fid);
for i = 1:r
name = fscanf(fid,'%s',1);% Filter out string at beginning of
line
num = fscanf(fid,'%f %f %f %f %f %fn',6)'; % Read in numbers
if(i==1)
names = name; % Add 1st text string
result = num; % Add 1st row
else
names = char(names,name); % Add next string
result = [result;num]; % Add additional rows
end
end
%stock{filenum} = {filename{filenum},result,names};
stock(ii) =
struct('Name',filename(ii),'Data',result,'time',names);
fclose(fid);
end
matlab 将txt导入excel,[转载]MATLAB 批量导入excel和txt文件的方法相关推荐
- java 导入excel表格(批量导入),下载excel模板,导出表格
1.导入excel表格(批量导入) 如图,给id=83和id=84的老师导入工作时间. 导入的excel模板如下 注意导入excel表格时关于日期时间类的的数据要设置对应的格式. 后台接口 /*** ...
- matlab读ascii的dat,[转载]MATLAB读取和调用各种数据(txt,dat,ma
例2-1 %exam1.m [f,message]=fopen('fileexam1', 'r') if f==-1 disp (message); %显示错误信息 end 若文件fileexam1不 ...
- mysql导入多个txt_MySQL批量导入Excel、txt数据
我想Excel是当今最大众化的批量数据管理软件了吧,所以我们会经常涉及到将Excel中数据导入到MySQL中的工作.网上有一些关于直接将Excel导入MySQL的教程,不知道是我安装的office不对 ...
- matlab作动态函数曲线图,[转载]Matlab中使用Plot函数动态画图方法总结
本帖最后由 sonictl 于 2012-12-31 12:18 编辑 请删除我 清楚超靠靠靠 没办法,一会儿限制这不能发表,那不能发表的.... [转载]Matlab中使用Plot函数动态画图方法总 ...
- 批量导入时间oracle excel,读取Excel数据、批量导入到Oracle数据库
/** * @Description: 得到Excel文档,把文档中的数据批量导入到数据库中 * 1.找到上传的数据,2.把数据放到List集合中,3.把List集合中的数据更新到数据库 * @ret ...
- c excel批量导入mysql数据库_Excel批量导入数据库
在上个系统中需要用到Excel整体导入的功能整体的核心思路如下: 1.首先将需要导入的Excel上传至服务器 2.为了避免文件名重复,重命名上传的Excel文件 3.将上传的Excel文件读入Data ...
- XX健康:预约管理-预约设置日历插件文件简单下载Excel文件解析Excel表数据批量导入
1. 需求分析 前面我们已经完成了检查项管理.检查组管理.套餐管理等.接下来我们需要进行预约设置,其实就是设置每一天的体检预约最大数量.客户可以通过微信端在线预约,在线预约时需要选择体检的时间,如果客 ...
- springboot 导入excel(数据批量导入)
springboot excel数据批量导入 1.pom.xml 引入poi依赖 <!--poi--><dependency><groupId>org.apache ...
- matlab制作动画并保存,[转载]Matlab中动画的实现、制作和保存(转载Matlab技术论坛)...
Matlab中动画的实现.制作和保存(转载Matlab技术论坛) 本帖由Matlab技术论坛原创,原帖参见 http://www.matlabsky.com/thread-592-1-1.html 光 ...
最新文章
- 达拉草201771010105《面向对象程序设计(java)》第十六周学习总结
- html 地址坐标图标,浏览器地址栏中显示自定义小图标
- ABAP选择屏幕权限控制
- PHP 4 中对象的比较
- oracle10g的silent,Linux 静默(Silent) 安装Oracle 10g
- android 通知历史,Android 4.3人性新功能:查看通知历史
- Angular的@Output与@Input理解
- flutter弹框怎么封装_Flutter初始化时 弹出弹出框
- 1013 数素数 (20 分)—PAT (Basic Level) Practice (中文)
- 阿里巴巴Android开发手册(规约)
- 基于matlab的车牌识别系统的实现
- c 语言可以直接调用max,c语言宏定义函数如何调用
- 网页磁贴模板_文本磁贴(登录)模板 (HTML)
- FlashFXP 便携版,U盘版,真正绿色
- 【思特奇杯·云上蓝桥-算法集训营】第1周----真题汇总+思路分析
- [PED08]Self-paced Clustering Ensemble自步聚类集成论文笔记
- NVIDIA Jetson Xavier NX部署VINS-fusion-GPU
- 高等数学:第五章 定积分(2) 定积分的性质、中值定理
- IOS设备与Windows面对面互传文件
- 【数据结构】01-绪论《数据结构 C语言版(严蔚敏、吴伟民)》