我是Fortran的新手,我想从几行解析数组
像下面这样的大文本文件。在我阅读完整的文件后,我分开了
归档到几个部分。我想解析特定的行,L(i)
,
并从行写几列。我试着写一小部分
该计划。我从文本文件中读取了所有行,但我不知道如何
我可以解析具体的Line(i)
。
文本文件:
... ...
a b c d
1.2564E+2 0.2564E+2 1.25047E+2 3.2564E+1
1.2564E+2 0.2564E+2 1.25047E+2 3.2564E+1
1.2564E+2 0.2564E+2 1.25047E+2 3.2564E+1
1.2564E+2 0.2564E+2 1.25047E+2 3.2564E+1
..... .....
character*256 Line(155)
integer ierr, n, i, s
real:: a, b, c, d
open(10,file='b.txt', status='old')
do i=1,155
read(10,'(a)',iostat=ierr) Line(i)
if (ierr /= 0) exit
end do
close(10)
答案 0 :(得分:1)
您可以使用read
来读取字符变量:
do i = 1, 155
read(line(i), *) a, b, c, d
print*,'a =',a
print*,'b =',b
print*,'c =',c
print*,'d =',d
enddo
如果您不打算将Line
用于其他任何事情,那么您可以首先阅读a
,b
,c
和{{ 1}}直接来自您的文件。