除了Fortran中文件的最后两行之外,你怎么读?

时间:2018-05-11 19:47:26

标签: fortran

我想要阅读大量输入文件。它们包含不同数量的总行数。我想读取每个文件中最后两行的所有行。我该怎么做呢?是首先计算每个文件中的行数然后读取所需行数的唯一方法吗?或者有什么比以下更有效的东西?

   DO I = 1,1000

      OPEN(UNIT=I,FILE=FILENAME,STATUS='UNKNOWN',ACTION='READ')

      DO
         READ(I,*,IOSTAT=IO)
         IF (IO/=0) EXIT
         nlines(I) = nlines(I) + 1
      END DO

      REWIND(I)

      DO J = 1,nlines(I)-2
         READ(I,*) A(J)
      END DO

   END DO

1 个答案:

答案 0 :(得分:0)

为什么不忽略最后两行(即在完成读取后简单地将nlines(i)递减2)? 即:

{{1}}