matlab中的fprintf使用问题
matlab输出一个行向量aa到txt文本,假设aa中有n个元素,当然可以在fprintf中写n个“%10d”(怎么表示)但我不知n是多少的情况下,怎么表示有n个“%10...
matlab输出一个行向量aa到txt文本,
假设aa中有n个元素,当然可以在fprintf中写n个“%10d”(怎么表示)
但我不知n是多少的情况下,怎么表示有n个“%10d”
如以下程序如何改:aa元素为n
fid = fopen('Y2.txt','w');
fprintf(fid,'%10d %10d %10d %10d\n',aa);
fclose(fid);
或者提供其他方法,谢谢! 展开
假设aa中有n个元素,当然可以在fprintf中写n个“%10d”(怎么表示)
但我不知n是多少的情况下,怎么表示有n个“%10d”
如以下程序如何改:aa元素为n
fid = fopen('Y2.txt','w');
fprintf(fid,'%10d %10d %10d %10d\n',aa);
fclose(fid);
或者提供其他方法,谢谢! 展开
2个回答
展开全部
怎么会不知道n是多少呢,length一下或size一下不就知道了。
只是'%10d %10d %10d %10d\n'这样写n个比较麻烦,用循环就可以了。
如
fid = fopen('Y2.txt','w');
for i=1:n
fprintf(fid,'%10d',aa(i));
end
fprintf(fid,'\n');
fclose(fid);
还有一种方法是用dlmwrite
如
dlmwrite('Y2.txt',aa,' ')
连fopen和fclose都不需要,很方便的。
只是'%10d %10d %10d %10d\n'这样写n个比较麻烦,用循环就可以了。
如
fid = fopen('Y2.txt','w');
for i=1:n
fprintf(fid,'%10d',aa(i));
end
fprintf(fid,'\n');
fclose(fid);
还有一种方法是用dlmwrite
如
dlmwrite('Y2.txt',aa,' ')
连fopen和fclose都不需要,很方便的。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询