我想将一个包含大量数据的矩阵逐行写入文件中。例如,我有一个 100*100 的矩阵,我想在文件中以 100*100 的形式保存它。但是,它不起作用。以下是我的代码和一些描述。 N和M是数百左右的整数。 RECL 是预期长度我设置了文件,但在这里似乎这个命令不起作用。当N设置为99时,输出为198行
M设置为200。Vec是双精度复矩阵。如何输出 Vec 的值并保持其原始格式 N*M?我的编译命令是“ifort -o out test.f90”。
open(unit=2, file='graph1.txt', ACTION="write", STATUS="replace",RECL=40*M+10)
do i=1,N
do j=1,M
write(2, '(F)', advance='no') real(Vec(i,j))
end do
write(2, *) ''
end do
按照@george的建议,我编写了一个这样的程序:
program test
implicit none
integer i,j
open(unit=2, file='graph1.txt', ACTION="write", STATUS="replace")
do i=1,500
write(2, '(1600F14.7)')( 0.00001 ,j=1,499)
end do
close(2)
end
有了这段代码,问题就解决了!可能是我上次编译没正确。