Fortran运行时错误:读取输入数据时文件结束

时间:2016-06-11 10:58:44

标签: file-io fortran eof

我目前正在运行代码而且我总是达到同样的目的。我正在尝试读取输入文件并返回错误:

  

Fortran运行时错误:文件结束

在另一篇文章中他们说要放入iostat说明符,所以现在我的代码看起来像这样:

INTEGER    :: m
INTEGER    :: st

Open(Unit = 13,action='read',file='Data_Inp.dat',status='old')
read (13,*, iostat = st) m
write (*,*) st
write (*,*) m

ALLOCATE(winkel(m),energie(m))

Do i = 1,m
  read(13,*),winkel(i),energie(i)
End Do

输入文件如下所示:

12
-17.83 -0.019386527878
-15.83 -0.020125057233
-12.83 -0.020653853148
-11.83 -0.020840036028
-9.83 -0.020974157405
-8.83 -0.021056401707
-6.83 -0.021065517811
-5.83 -0.020992571816
-4.83 -0.020867828448
-1.83 -0.02069158012

现在终端为iostat打印-1,为m打印一个不断变化的数字。

1 个答案:

答案 0 :(得分:0)

如果第一个读命令导致错误,请在" 12"之前或之后检查无关字符。在您的输入文件中,特别是如果您在一个平台上创建它(Windows?)并在另一个平台上使用它(Linux?Mac?)