MATLAB有非常直接的方法可以输出到文本和Excel文件。
假设以上数据保存在矩阵M里
(1) xlswrite('myxls.xls',M) 输出到Excel里
(2)save myfile.txt M -ascii 输出到myfile.txt文件里
save(最简单基本的)具体的命令是:用save *.txt-ascii x (x为变量; *.txt为文件名,该文件存储于当前工作目录下,再打开就可以打开后,数据有可能是以指数形式保存的) 。
优势特点
1、高效的数值计算及符号计算功能,能使用户从繁杂的数学运算分析中解脱出来;
2、具有完备的图形处理功能,实现计算结果和编程的可视化;
3、友好的用户界面及接近数学表达式的自然化语言,使学者易于学习和掌握;
4、功能丰富的应用工具箱(如信号处理工具箱、通信工具箱等) ,为用户提供了大量方便实用的处理工具。
以上内容参考:百度百科-MATLAB
2018-02-22
第一种方法:save(最简单基本的)
具体的命令是:用save *.txt
-ascii x (x为变量; *.txt为文件名,该文件存储于当前工作目录下,再打开就可以 打开后,数据有可能是以指数形式保存的.)
例子:
a =[17 24 1 8 15;23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9 ];
save afile.txt -ascii a
afile.txt打开之后,是这样的:
1.7000000e+001 2.4000000e+001 1.0000000e+000 8.0000000e+000 1.5000000e+001
2.3000000e+001 5.0000000e+000 7.0000000e+000 1.4000000e+001 1.6000000e+001
4.0000000e+000 6.0000000e+000 1.3000000e+001 2.0000000e+001 2.2000000e+001
1.0000000e+001 1.2000000e+001 1.9000000e+001 2.1000000e+001 3.0000000e+000
1.1000000e+001 1.8000000e+001 2.5000000e+001 2.0000000e+000 9.0000000e+000
第二种方法:dlmwrite
dlmwrite('a.txt',a,'precision','%10.0f')
或者是dlmwrite('a.txt',a,'delimiter',
'\t')
对于只有一行或者一列的数据,很适用,但是多行的,就乱了
网上有很多这一类似的问题,但是都不是很理想
使用方法:
dlmwrite('filename',
M)
使用默认分隔符“,”将矩阵M写入文本文件filename中;
dlmwrite('filename',
M, 'D')
使用分隔符D分割数据,“\t”表示tab分割,“,”为默认分割符;
dlmwrite('filename',
M, 'D', R, C)
从矩阵M的第R行、第C列开始,作为要写矩阵块的左上角,将数据用D分割写入文件。
其他用法有:
dlmwrite('filename',
M, 'attrib1', value1, 'attrib2', value2, ...)
dlmwrite('filename',
M, '-append')
dlmwrite('filename',
M, '-append', attribute-value list)
例如:
a = [1 2 3; 4 5 6; 7 8 9];
dlmwrite('test.txt',
a);
则test.txt中的内容为:
1,2,3
4,5,6
7,8,9
第三种方法:fopen+fprintf
第三种方法:
fopen+fprintf
略
参考资料:
广告 您可能关注的内容 |