怎么将matlab中mat数据保存为txt格式
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么将matlab中mat数据保存为txt格式相关的知识,希望对你有一定的参考价值。
比如说:在mat中是一列数据显示是
12
12
12
13
14
14
在txt中的显示是
12
12
12
13
14
14
最后要求保存的txt的格式在桌面上。
1、首先在Matlab中生成一组数据data=0:1:1000;生成了0到1000的1001个数据,数据之间间隔为1。
2、使用save函数,这是最简单的一种方法。首先查看一下save函数的介绍,在命令行窗口中输入doc save。
3、可以看到save函数的功能是将工作控件中的变量保存到文件中,其格式如下。
4、在命令行窗口输入save('output.txt','data','-ascii')后边的ascii表示的是ASCII码,如果保存到.mat的文件中则不需要,这样会默认保存到matlab的文件夹中。
5、注意上图中的保存位置是Matlab的默认文件夹,如果要保存到指定文件夹可以输入路径save('E:\\output.txt','data','-ascii')这样会保存到E盘中,就可以了。
参考技术A clcclear all;
format long
mat=[12;12;12;13;14;14];
leng=length(mat);
fid=fopen('C:\Documents and Settings\zhang\Desktop\example.txt','wt');
for i=1:1:leng
fprintf(fid,'%d\n', mat(i));
end
fclose(fid)
你看看是不是这样。 参考技术B save filename.txt variable -ascii 参考技术C >> A=[12;12;12;13;14;14]
A =
12
12
12
13
14
14
>> save Adat.txt -ascii
在左上角的current directory中就可以看见一个Adat.txt的文件,如果要弄到桌面上,整个复制过去就行了,txt文本内容是:
1.2000000e+001
1.2000000e+001
1.2000000e+001
1.3000000e+001
1.4000000e+001
1.4000000e+001
你试一下追问
我的那个是2000多个的数据呢,我咋打上去啊。就是那一列有2000多个数!
追答先复制,在命令窗口输入变量名称例如a,输入“a=[ ”,然后粘贴,再输入“ ]”就行,matlab可以识别的。下面就是我复制过去的,不用管空格和换行,给你个参考
>> a=[ 12
12
12
13
14
14
]
a =
12
12
12
13
14
14
matlab怎么将mat文件转换成txt文件
这是不可以的。mat文件是matlab专用的存储workspace的文件,如果强制存储成txt文件存储并打开,文本只会显示为乱码,需要把后缀名改回mat,再在matlab中打开,才能使用。
如果是需要把工作空间里面的数据导出可以编写一个小程序,把矢量、矩阵写出到txt中,或者直接复制粘贴到txt文本文件中、或者excel表格中。
具体做法是,双击右边workspace里面的变量,这时matlab会弹出一个表格,
选择表格里面的区域,直接ctrl+c可以复制。
打开一个txt文本文件或者excel文件,都可以直接粘贴。
参考技术A 这个是我自己写的一个小函数,你也可以这样用。当然哦,我写的是个2D阵,你修改一下可以作为3D阵的保存方法了。function back = save2txt( file_Name, matrix ) %把矩阵matrix保存成txt文件。
fop = fopen( file_Name, 'wt' );
[M,N] = size(matrix);
for m = 1:M
for n = 1:N
fprintf( fop, ' %s', mat2str( matrix(m,n) ) );
end
fprintf(fop, '\n' );
end
back = fclose( fop ) ;本回答被提问者和网友采纳 参考技术B load 进工作区以后,再以文本方式保存, 即SAVE -ASCII XXX
以上是关于怎么将matlab中mat数据保存为txt格式的主要内容,如果未能解决你的问题,请参考以下文章
如何将excel数据文件转换成MATLAB中的.mat文件?