写入文件时,如何删除空格,并且数字之间只有1个空格?

时间:2019-01-24 19:54:26

标签: fortran

我希望将数字以以下方式打印到文件中,它们之间仅留1个空格:

4 238.328 0.744439 5.119 0 34.2

但最终之间会有很多空格。我如何解决它? 这是我到目前为止的代码,它输出了我上面描述的内容。

character(len=30) :: str1,str2,str3,str4,str5,str6

open(unit=21, file='test.dat', status='replace', action='write')

do i=1,200
    write(str1,*) i 
    write(str2,*) volume(i) 
    write(str3,*) radius(i)
    write(str4,*) G(i)
    write(str5,*) cpr(i) 
    write(str6,*) area(i)
    write(21,'(a)') trim(str1)//trim(str2)//trim(str3)//trim(str4)//trim(str5)//trim(str6)
end do

编辑:我一直在尝试为每个 str 使用格式,例如:

write(str1,'(I5)') i 
write(str2,'(F10.1)') volume(i) 
write(str3,'(F10.5)') radius(i)

等等。仍然不起作用。

0 个答案:

没有答案