zhangchengpeng 发表于 2010-9-27 17:04

如何导出TXT

把MAT文件导出为TXT数据,帮助中的dlmwrite看不大明白,保存后打不开,有谁指点一下,谢谢

qibbxxt 发表于 2010-9-27 19:38

直接不到导出吧,先用load把数据加载进来,然后用save保存

zhouyang664 发表于 2010-9-27 20:43

可以说清楚一点吗?比如说数据是什么格式,要保存成什么格式啦?

re-us 发表于 2010-9-27 21:12

先load进来,然后fopen一个文件,然后fprintf进去

雪缘 发表于 2010-9-27 21:30

Matlab函数dlmwrite:将一个矩阵写入ASCII码分隔的文件中

dlmwrite
将一个矩阵写到由分隔符分割的文件中。

在保存整数到文件时使用save存为ascii文件时,常常是文件里都是实型格式的数据(有小数点,和后面很多的0,看着很不方便)。于是要保存此类数据时,我们可以使用此dlmwrite命令。

使用方法:
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 = ;
dlmwrite('test.txt', a);
则test.txt中的内容为:
1,2,3
4,5,6
7,8,9

而使用save
a = ;
save 'tst.txt' a -ascii;
文本文件里的内容为:
   1.0000000e+000   2.0000000e+000   3.0000000e+000
   4.0000000e+000   5.0000000e+000   6.0000000e+000
   7.0000000e+000   8.0000000e+000   9.0000000e+000

zhangchengpeng 发表于 2010-9-28 10:22

回复 雪缘 的帖子

写的很详细,很不错,明白了,谢谢

zhangchengpeng 发表于 2010-12-12 22:54

回复 5 # 雪缘 的帖子

那如何把一个1×n矩阵保存为a行,b列的矩阵?谢谢

Happy99 发表于 2010-12-13 00:02

回复 7 # zhangchengpeng 的帖子

help reshape
页: [1]
查看完整版本: 如何导出TXT