matlab中涉及到excel的处理的主要就三个函数,xlsfinfo,xlsread,xlswrite,
(2019-03-01 15:17:32)
matlab中涉及到excel的处理的主要就三个函数,xlsfinfo,xlsread,xlswrite,由于matlab已经完全屏蔽了复杂的底层操作,使用这三个简单的函数配合matlab的运算能力,基本上就能满足随意处理数据的需求了。简单的流程是先用xlsinfo返回excel文件的信息(根据具体的需要):
[status,sheets,xlFormat] = xlsfinfo(filename)
其中主要的一个信息是sheets,它可以告诉你一个.xlsx文档中有多少个工作表(sheet),返回值sheets的格式为cell
array,对cell
array索引有两种,一种用大括号,一种用小括号,但返回结果的数据类型不同,sheets{1}返回字符串,即工作表的名字,指sheets中第一个cell的值,而sheets(1)仍然是cell
array,指第一个cell,所以小括号可以分片索引。读工作表中的数据用xlsread,几种典型的调用方式如下:
num = xlsread(filename)
num = xlsread(filename,sheet)
num = xlsread(filename,xlRange)
num = xlsread(filename,sheet,xlRange)
%读取指定.xlsx文件中工作表sheet中位于xlrange处单元的数据
[num,txt,raw] = xlsread(~) %参数同上,可选择
filename,sheet与xlrange的数据类型都为字符串,说明实际参数都要用单引号括起来,xlrange指定单元格,形如'A1:A1','A1:B4',‘B2:AA9’等
xlsread返回值可以是一个也可以是三个,以返回值三个为例,num只包含数字,txt只包含文本,raw则包含数字与文本,raw数据类型为cell
array,每个cell的数据类型都是字符串,意味着要使用某个数据可以用形如str2double(raw{i,j}),而比较某个字符串则用形如strcmp(string1,raw{i,j})
向excel中写数据与文字也是很简单,用xlswrite,参数A是数据,类型可以是cell
array,也可以是矩阵。可以具体到像某个文件的某个工作表中的某个格子写入任意的字符串。
xlswrite(filename,A)
xlswrite(filename,A,sheet)
xlswrite(filename,A,xlRange)
xlswrite(filename,A,sheet,xlRange)
---------------------
作者:ke_ang
来源:CSDN
原文:https://blog.csdn.net/ke_ang/article/details/45647923
版权声明:本文为博主原创文章,转载请附上博文链接!