cobol如何循环读取文件

avatar
作者
猴君
阅读量:3

在COBOL中循环读取文件可以使用PERFORM循环结构来实现。以下是一个简单的示例代码:

```
IDENTIFICATION DIVISION.
PROGRAM-ID. READ-FILE.

DATA DIVISION.
FILE SECTION.
FD INPUT-FILE.
01 INPUT-RECORD.
  05 INPUT-FIELD PIC X(10).

WORKING-STORAGE SECTION.
01 EOF-SWITCH PIC X(01) VALUE 'N'.

PROCEDURE DIVISION.
MAIN-LOGIC.
   OPEN INPUT INPUT-FILE
   PERFORM UNTIL EOF-SWITCH = 'Y'
       READ INPUT-FILE INTO INPUT-RECORD
       AT END MOVE 'Y' TO EOF-SWITCH
       NOT AT END
           DISPLAY "Read record: " INPUT-FIELD
   END-PERFORM
   CLOSE INPUT-FILE
   STOP RUN.
```

在上面的代码中,首先定义了一个文件描述符FD和一个输入记录INPUT-RECORD。然后在工作存储部分定义了一个名为EOF-SWITCH的变量,用于判断文件是否已读取完毕。

在主过程中,首先打开输入文件,然后使用PERFORM循环结构来连续读取文件中的记录,直到遇到文件末尾。在每次读取记录后,通过AT END子句判断是否已到文件末尾,如果是的话则将EOF-SWITCH设置为'Y',否则通过NOT AT END子句来处理读取到的记录。

最后,关闭输入文件并停止程序运行。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!