怎么将matlab中数据保存为txt或dat格式

a=17241815235714164613202210121921311182529保存后在文本文件中显示成172418152357141646132022101219... 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

保存后在文本文件中显示成
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
程序要怎么写,先谢谢大家!
以下这种不行,谢谢化学工程的回答
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
展开
 我来答
恩佐smile
推荐于2017-09-23 · TA获得超过150个赞
知道答主
回答量:69
采纳率:100%
帮助的人:55.8万
展开全部
1、如果数据没有被保存为mat文件,那么将数据保存为矩阵形式,假设此矩阵为A。利用如下程序:
fid=fopen('文件路径','wt'); %新建文件,你要保存到的文件路径,该路径的最后为'\文件名.txt'
[m,n]=size(A); %接上,或者是'\文件名.dat'
for j=1:m
for z=1:n
if z==n
fprintf(fid,'%g\n',total(j,z)); %一行一行的写入数据,到该行的最后一个数据,回车
else
fprintf(fid,'%g\t',total(j,z)); %相邻两个数据之间隔2个字符,相当于按一次Tab键
end
end
end
fclose(fid);
2、如果数据已经被保存为了mat文件,先将mat文件中的数据load到矩阵A中。在1中程序的基础上添加一行:
A=load('xxx.mat');
然后再运行1中程序即可把数据写入你想要的txt和dat文件中。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
皮几万Bs
2015-08-18 · 超过14用户采纳过TA的回答
知道答主
回答量:25
采纳率:0%
帮助的人:22.6万
展开全部
dlmwrite('D:\result.txt',result);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
水千柳CZ
推荐于2017-10-08 · TA获得超过351个赞
知道答主
回答量:86
采纳率:0%
帮助的人:161万
展开全部
try this:

>> dlmwrite('a.txt',a,'delimiter',' ','newline','pc')
>> !type a.txt
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

%read Matlab help to see the usage of function dlmwrite.
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
化学工程
2007-04-17 · TA获得超过8900个赞
知道大有可为答主
回答量:2212
采纳率:80%
帮助的人:3343万
展开全部
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
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式