matlab 输出矩阵到txt文件 为什么是一列列的输出
我采用下面程序读取ceshi.txt文件,然后再输出aa=importdata('1-8\ceshi.txt')a=aa.datafid=fopen('export.tx...
我采用下面程序读取ceshi.txt文件,然后再输出
aa=importdata('1-8\ceshi.txt')
a=aa.data
fid=fopen('export.txt','wt')
count=fprintf(fid,' %f %f \n',a)
fclose(fid)
ceshi.txt内容
Distance [祄] z [祄]
1 10
2 20
3 30
4 40
export.txt内容
1.000000 2.000000
3.000000 4.000000
10.000000 20.000000
30.000000 40.000000
为什么是一列一列的输出啊?求大神帮忙。谢谢。 展开
aa=importdata('1-8\ceshi.txt')
a=aa.data
fid=fopen('export.txt','wt')
count=fprintf(fid,' %f %f \n',a)
fclose(fid)
ceshi.txt内容
Distance [祄] z [祄]
1 10
2 20
3 30
4 40
export.txt内容
1.000000 2.000000
3.000000 4.000000
10.000000 20.000000
30.000000 40.000000
为什么是一列一列的输出啊?求大神帮忙。谢谢。 展开
2个回答
展开全部
1、因为大部分存到txt的数据都是以列为形式的列向量,如果有行向量,也可以一行行的输出。
2、按行输出数据的程序如下,这种程序比较灵活,可以直接套用,假设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、按行输出数据的程序如下,这种程序比较灵活,可以直接套用,假设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);
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |