抱歉,
我尝试用不同的格式(1.4e-12,10 ......)写一个file.dat whit很多列(11)
当我尝试编写代码时,我使用以下fortran命令:
WRITE(7,*) id,t,a,e,inc,capom,omega,capm,mass,radius
但原始文件中的每一行现在都是用多行写的。
自:
1222221 0.0 10.0 0.0 3.1415927 0.0 0.0 3.7828348 9.0E-9 4.0E-6
为:
1222221 0.000000000000000E + 000 10.0000000000000 0.000000000000000E + 000 0.000000000000000E + 000 0.000000000000000E + 000 0.000000000000000E + 000 1.67102026939392 9.000000189551827E-010 3.999999989900971E-006
我该如何解决这个问题?
非常感谢你的帮助!
答案 0 :(得分:2)
您需要指定所需的格式。您可以使用
执行此操作i0
指定一些未知宽度整数f4.1
指定最多2位数的实数加上1位小数(最小值为0.0,最大值为99.9)f9.7
指定一个最多1位数的实际小块7位小数(非常适合pi)es10.1
指定一个最多8位数的科学记数法,带有一个小数位(适合9e-9)1x
指定每个数字之间的空格这些可以一起使用
write(7,'(i0,1x,3(f4.1,1x),f9.7,1x,2(f4.1,1x),2(es10.1,1x))') &
id,t,a,e,inc,capom,omega,capm,mass,radius