У меня есть большое количество входных файлов, которые я хочу прочитать. Они содержат различное количество общих строк. Я хочу прочитать все строки до двух последних строк в каждом файле. Как мне это сделать? Это единственный способ подсчитать сначала количество строк в каждом файле, а затем прочитать желаемое количество строк? Или есть что-то гораздо более эффективное, чем что-то вроде следующего?
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