matlab中将数据输出保存为txt格式文件的方法

时间:2021-11-24 11:49:58

第一种方法: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 


参考资料:

http://wenku.baidu.com/link?url=9v2OSMQVEnFVLQOzf6ZMgsGZsz1dntFDFAN3hFOpJlOil9jfIuHMqbzUriJGCWRRhuVS9yjm9z6nYQxt_goEcC2RYoncY8kbW_JxKM4YuKG