怎么将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 展开
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 展开
展开全部
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文件中。
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文件中。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
dlmwrite('D:\result.txt',result);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
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.
>> 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.
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
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
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
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询