MATLAB中怎么实现把每一次迭代结果输出到txt文本?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MATLAB中怎么实现把每一次迭代结果输出到txt文本?相关的知识,希望对你有一定的参考价值。
MATLAB中怎么实现把每一次迭代结果输出到txt文本?
我用MATLAB遍了一个潮流迭代求解的程序,最终结果都是对的。但我想把每一次迭代的结果输出到一个TXT,可是用了fprintf函数放在循环里面,可是结果只有最终一次迭代的结果输出到文本中了,我想应该是后面迭代的结果把前面的覆盖掉了,求一种可以实现每次迭代结果输出的方法。
用num2str好像不行,出来有些是乱码。如果有可以把工作空间的数据导出到EXCEL表格中的方法也行啊。
还有,我这必须得以复数形式输出啊。
法一:把每次迭代的结果先存到一个数组里,计算结束后打开文件一次性写入,这里需要默认的文件打开方式,即‘w’,这样就不会存在覆盖问题,而且效率较高。
法二:先打开一个文件,将每次迭代的结果逐个添加到文件中,注意是“添加”,这要求文件打开模式是‘a’,这个效率较低,不如法一。追问
现在输出问题解决了,可以复数矩阵只能输出实部。要输出复数阵怎么办。
追答>> a=[1+2i;2+3i]
a =
1.0000 + 2.0000i
2.0000 + 3.0000i
>> imag(a)
ans =
2
3
>> real(a)
ans =
1
2
如上所示,你可以分别取出一个复数矩阵的实部和虚部,然后分别写入文件。
再加上一些你的处理优化,就可以了
分别存储我知道啊,可是我这个必须得一起输出
追答假设结果复数矩阵为data
fid=fopen('data.txt','w');
fprintf(fid,'%f %f\r\n',[real(data) imag(data)]);%第一列是实部,第二列是虚部
fclose(fid);
如果将来要用,你可以读出txt文件中的数据再转换为复数,示例如下:
>> a=[1+2i;2+3i]
a =
1.0000 + 2.0000i
2.0000 + 3.0000i
>> b=[real(a) imag(a)]
b =
1 2
2 3
>> c=b(:,1)+b(:,2)*i
c =
1.0000 + 2.0000i
2.0000 + 3.0000i
比如fid=fopen(‘a.txt’,‘wt));fprintf(fid,'%f \n',x);追问
我的程序里面有换行的,不是换行的问题
追答你的意思是生成了一个每行都一样的txt?
追问是我打开文件的命令位置放得有问题。调整下就好了
追答num2str可以把数转成字符串,比较容易输出;不过会出现0,比如 i 显示的是 0+1i
Java输出结果怎么对齐
比如输两行字,可是上一行的字只有一位数,第二行的字有二位数,怎么对齐输出来啊
就是每一列对齐啊,如果第一行有一位数的数,又有二位数的数,用什么语句可以使他每列对齐啊
首先根据需要把每一列的宽度设死,比如每列10个字符,在输出的时候,每输出一列,后面加上这列的宽度减去已经输出列数的字符数。
如下:
public class Col
/**
* @param args
*/
public static void main(String[] args)
String[][] str="12","5","998","154682","5","998","12","182";
int col=10;
for (int i = 0; i < str.length; i++)
for (int j = 0; j < str[i].length; j++)
System.out.print(str[i][j]+getPlace(col-str[i][j].length()));
System.out.println();
public static String getPlace(int count)
String str="";
for (int i = 0; i < count; i++)
str+=" ";
return str;
参考技术A
java输出可以定义每行开头的空格数,示例如下:
public class ceshipublic static void main(String[] args)
for(int i=0;i<=10;i++)
System.out.printf("%10s", i);
//%10s 是表示对应的空格10格
//i 是将要输出的
参考技术B System.out.println("\t" + "5");
System.out.println("\t" + "55"); 参考技术C 左对齐?
右对齐?
以上是关于MATLAB中怎么实现把每一次迭代结果输出到txt文本?的主要内容,如果未能解决你的问题,请参考以下文章