-fortran:从文本文件中读取数字
-fortran : reading numbers from a text file
我有一个包含多列和多行的数字文本文件。我尝试了几种方法,包括数组,但最好的结果是我只能得到全部的 3 列。我有什么想法可以读取 Fortran 77 中的所有数据吗?
open(unit=1, file='f', status='old')
do i = 1, 100
read(1, *) x(i), y(i), z(i)
write(6, * ) x(i), y(i), z(i)
enddo
甚至二维数组:
do i = 1, 100
do j = 1, 50
read(1, *) x(i, j)
write(6, *) x(i, j)
enddo
enddo
或更改 open(..., access='direct')
none 成功了,因为我有这样的文件:
1 2 4.5 77 89 4 3 2...
2 4 4 5 6 73 5 3.4 ...
1 2 4 5 67 8 99...
...
数据似乎没有任何特定结构。
您可以为此使用列表定向输入:
program main
real a(100)
read (*,*) a
print *,a
end
我建议您不要出于自己的目的在代码中使用任何小于 10 的单元号。
我有一个包含多列和多行的数字文本文件。我尝试了几种方法,包括数组,但最好的结果是我只能得到全部的 3 列。我有什么想法可以读取 Fortran 77 中的所有数据吗?
open(unit=1, file='f', status='old')
do i = 1, 100
read(1, *) x(i), y(i), z(i)
write(6, * ) x(i), y(i), z(i)
enddo
甚至二维数组:
do i = 1, 100
do j = 1, 50
read(1, *) x(i, j)
write(6, *) x(i, j)
enddo
enddo
或更改 open(..., access='direct')
none 成功了,因为我有这样的文件:
1 2 4.5 77 89 4 3 2...
2 4 4 5 6 73 5 3.4 ...
1 2 4 5 67 8 99...
...
数据似乎没有任何特定结构。 您可以为此使用列表定向输入:
program main
real a(100)
read (*,*) a
print *,a
end
我建议您不要出于自己的目的在代码中使用任何小于 10 的单元号。