fortran95的使用方法
16.1.5 内部文件
内部文件的概念是FORTRAN语言的一个很大的特点,它实现了数据从内存到内存的传输与转换的功能。
内部文件的属性与约定如下:
● 内部文件为默认字符型变量,不能是带向量下标的数组片断。
● 内部文件的纪录为标量字符变量。
● 如果文件本身就是一个标量字符变量,那么该文件就只包含一个纪录,其长度就是标量字符变量的长度。
如果内部文件是一个字符数组,那么它就被看成是一个字符数组元素的序列,其中的每个元素都是该文件的一个纪录,该文件纪录的顺序就是该数组或数组片断的数组元素序,该文件的每个纪录的长度都相同,即数组元素的长度。
● 写入内部文件纪录的同时就定义了该纪录。如果写入字符数目少于纪录长度,那么纪录多余的空间就被填上空字符。写入的字符数目不能超过纪录长度。
● 只有在内部文件的纪录被定义之后,才能读入该纪录。
● 内部文件的纪录除了通过输入语句之外,还可以使用其他方法得到定义或去定义,例如字符赋值语句也能够定义作为纪录的字符变量。
● 在数据传输之前,内部文件总是定位于第一个纪录的头部,而该纪录就是当前纪录。 ● 在输入内部文件时,对空格的处理与使用具有值NULL的说明符BLANK=来打开外部文件一样,在必要的时候纪录可以添加空格。
● 在表控输出时,字符常量不能定界。
● 内部文件纪录的读与写只能通过不说明名称列表格式的序列访问格式化输入输出语句来完成。
● 内部文件不能出现在文件联结语句,文件定位语句以及文件查询语句当中。
16.2 文件的部件联结与访问
程序要和文件进行通讯,都需要程序通过一定的部件联结到文件,即通过部件输出数据到文件,通过部件从文件输入数据到程序。这里的所谓部件是一个纯粹的逻辑概念,而不是一个物理概念,之所以要引入这么一个逻辑概念,主要的原因就是为了在语言里获得对输入输出的通用描述。因为我们知道文件概念实际上是与操作系统与硬件存储形式密切相关的,不同的操作系统与硬件存储形式里面,对于文件往往有不同的形式约定,因此为了使得对输入输出能够有不依赖于具体系统的描述,FORTRAN引入了部件这个逻辑概念作为数据从程序到文件之间的桥梁。
部件使用如下的语法表示方法(R901):
io-unit
其中的输入输出部件(io-unit)可以具有如下三种形式之一:
external-file-unit
*