[英]Opening/reading .dat file in Fortran77
我正在尝试通读.dat文件中的一组点,并通过我的.f文件中的算法来运行这些点。 我一直在使用OPEN语句:
OPEN(UNIT=1,FILE='POINTS.DAT',FORM='UNFORMATTED')
对于初学者,一直在尝试打印.dat中的值-不起作用。
PRINT *, 1
PRINT *, POINTS.DAT
PRINT *, 'POINTS.DAT'
我应该放弃尝试打印出值吗? 我应该如何索引.dat中的值? 我是否应该执行DO循环并使它循环遍历文件中的数据点数? 我该如何称呼这些价值观?
打开后,您必须从文件中读取值。 您不能通过在打印语句中使用文件名来打印它们。 如果正确的是二进制/未格式化的文件,则使用不带格式的read (1) item
: read (1) item
。 您可以使用do循环并一次读取一个项目,也可以将所有项目读取到一个数组中。 如果文件是用另一个Fortran程序编写的,则应使用与写入相同的方法(单个项目或数组),因为该文件将基于记录。 如果文件是用另一种语言编写的 ,请在打开的语句中添加access ='stream' ,以告知Fortran它不具有Fortran通常使用的记录结构。
基本结构1:
real :: item ! or whatever type
open (unit=1, ...
ReadLoop: do
read (1, end=99) item
process item...
end do ReadLoop
99 continue
基本结构2:
real, dimension (NUMBER) :: array
open (unit=1,..
read (1) array
process array...
这是基本的Fortran ...如果您找到可以学习的书,则可能会取得更快的进步。 我喜欢Metcalf和Reid 解释的Fortran 90/95 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.