在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子句来处理读取到的记录。
最后,关闭输入文件并停止程序运行。