转载自 http://blog.csdn.net/ljhjiayou/article/details/17221797
在写入行或者列时,要清楚正在使用的是什么数据类型,以及这些数据类型之间是怎么转换的,一般是有命令函数的
而且,如果是cell的数据,要仔细思考用的是 { } 还是 [ ]
根据我正在编的程序,我的东西是如下写的,参考这个blog的原创文章
you、dreamy是前面的程序里面定义过的变量,引用在cell里面可以直接放变量,不用引号
xlswrite (filename,row,sheet,xlrange) 这个函数的使用,请 help xlswrite 即可,里面有所有的例子,我是照着写的
ysubclo,在程序的前面已经进行时被input入值的cell,但是是列的,所以用 ’ 进行转置为行的
ysum,这个是number的量,所以要用num2cell转换为cell,方便在writein里面进行cell的合并
其实可以都转化为你想要的某种数据类型,我只是选择了cell,因为我一直用cell来进行显示
这上面columns和rowname是对行名称和列名称的定义,注意用的是cell的写法,{}这个符号不要写错
行名称要用;,列名称要用
代码如下,亲测可用
file1 = 'C:\Users\Yuinfen\Documents\_private\matlab_study\allvresult.xls';
rowname = { you ;dreamy;'dreamy2';'dreamy3'};
xlswrite (file1,rowname,1,'A2');
xlswrite (file1,rowname,2,'A2');
rowname = { you ;dreamy;'dreamy2';'dreamy3'};
xlswrite (file1,rowname,1,'A2');
xlswrite (file1,rowname,2,'A2');
columns1 = {'likes', 'interesting', 'age', 'health', 'children','face', 'character', 'job', 'wealth', 'familyfriend'};
writein1 = [columns1;ysubclo';dsubclo'];
xlswrite (file1,writein1,1,'B1');
writein1 = [columns1;ysubclo';dsubclo'];
xlswrite (file1,writein1,1,'B1');
columns2 = {'sum', 'mean', 'std'};
ydata = num2cell([ysum,ymean,ystd]);
ddata = num2cell([dsum,dmean,dstd]);
writein2 = [columns2;ydata;ddata];
xlswrite (file1,writein2,2,'B1');
ydata = num2cell([ysum,ymean,ystd]);
ddata = num2cell([dsum,dmean,dstd]);
writein2 = [columns2;ydata;ddata];
xlswrite (file1,writein2,2,'B1');
最后加入两行代码就可以把xls文件转为mat文件
xlsread('allvresult.xls'); % 读取xls文件
save ('allvresult.mat'); % 转换为mat格式
save ('allvresult.mat'); % 转换为mat格式