f95 -o simple SimpleFileIO.f90 ------------------------------ Using the command line above to compile, with the datafile, DATA.dat below, yields the sample output: simple End of file detected at line 4 Please check data file I = 1 A(I) = 1 I = 2 A(I) = 2 I = 3 A(I) = 3 I = 4 A(I) = -1 I = 5 A(I) = -1 I = 6 A(I) = -1 I = 7 A(I) = -1 I = 8 A(I) = -1 I = 9 A(I) = -1 I = 10 A(I) = -1 DATA.DAT -------- 1 2 3 SimpleFileIO.f90 ---------------- PROGRAM SimpleFileIO INTEGER , DIMENSION(10) :: A =& (/-1,-1,-1,-1,-1,-1,-1,-1,-1,-1/) INTEGER :: IO_Stat_Number=0 INTEGER :: I OPEN(UNIT=1,FILE='DATA.DAT',STATUS='UNKNOWN') ! OPEN(UNIT=1,FILE='DATA.DAT',STATUS='OLD') DO I=1,10 READ (UNIT=1,FMT=10,IOSTAT=IO_Stat_Number) A(I) 10 FORMAT(I3) IF (IO_Stat_Number == 0) THEN CYCLE ELSEIF (IO_Stat_Number == -1) THEN PRINT *,' End of file detected at line ',I PRINT *,' Please check data file' EXIT ELSEIF (IO_Stat_Number > 0 ) THEN PRINT *,' Non numeric data in file at line ',I PRINT *,' Please correct data file' EXIT ENDIF END DO DO I=1,10 PRINT * , ' I = ',I,' A(I) = ',A(I) ENDDO END PROGRAM SimpleFileIO ! modified/simplified from http://www.kcl.ac.uk/kis/support/cit//fortran/ch2102.f90