Oracle® Solaris Studio 12.4:Fortran 用户指南

退出打印视图

更新时间: 2014 年 12 月
 
 

4.7.4 二进制未格式化 I/O

使用 FORM=’BINARY’ 打开文件与使用 FORM=’UNFORMATTED’ 具有大致相同的效果,所不同的是文件中没有嵌入记录长度。如果没有此数据,则无法知道一条记录的开始或结束位置。因此,无法对 FORM=’BINARY’ 文件执行 BACKSPACE 操作,这是因为不知道要退格到什么位置。对 ’BINARY’ 文件执行 READ 操作时,将按需要读取尽可能多的数据来填充输入列表中的变量。

  • WRITE 语句: 以二进制的形式将数据写入文件,并按输出列表中指定的数量传输字节。

  • READ 语句: 将数据读取到输入列表中的变量,并传输该列表所要求数量的字节。因为文件中没有记录标记,所以不进行“记录结束”错误检测。检测到的唯一错误是“文件结束”或异常系统错误。

  • INQUIRE 语句:对使用 FORM="BINARY" 打开的文件执行 INQUIRE 返回:

    FORM=”BINARY”ACCESS=”SEQUENTIAL”DIRECT=”NO”FORMATTED=”NO”UNFORMATTED=”YES”RECL= AND NEXTREC= are undefined

  • BACKSPACE 语句: 不允许使用-返回一个错误。

  • ENDFILE 语句: 在当前位置照常截断文件。

  • REWIND 语句: 将文件照常重新定位到数据的开头。