我目前正在运行代码而且我总是达到同样的目的。我正在尝试读取输入文件并返回错误:
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打印一个不断变化的数字。
答案 0 :(得分:0)
如果第一个读命令导致错误,请在" 12"之前或之后检查无关字符。在您的输入文件中,特别是如果您在一个平台上创建它(Windows?)并在另一个平台上使用它(Linux?Mac?)