Cobol 从文件中读取数据,而不使用“执行直到”和“结束”

Cobol 从文件中读取数据,而不使用“执行直到”和“结束”,cobol,Cobol,我尝试使用Cobol读取数据,但有以下限制 不允许使用: 结尾从句 表演直到 IF-ELSE 开关箱语句 迭代语句 002-READ. READ d-attendance IF (?????) perform 002-READ END-IF. 我正试图用上面的代码模拟一个循环,但我不知道应该如何编写IF语句,是否有任何方法可以检测EOF而不在末尾使用?当您第一次在文件控制下定义文件时,您可以这样定义它: select

我尝试使用Cobol读取数据,但有以下限制

不允许使用:

结尾从句

表演直到

IF-ELSE

开关箱语句

迭代语句

   002-READ.
        READ d-attendance
        IF (?????)
           perform  002-READ
        END-IF.

我正试图用上面的代码模拟一个循环,但我不知道应该如何编写IF语句,是否有任何方法可以检测EOF而不在末尾使用?

当您第一次在
文件控制下定义文件时,您可以这样定义它:

select my-file
    assign to 'ifile.txt'
    organization is line sequential
    file status is fs. 
现在,从文件读取时,
fs
变量的值会发生变化。例如,当没有发现错误时,
fs
取值
00
。可以找到更多信息

如果不允许使用列出的语句,则可以调用递归读取一行的函数,直到
fs
不等于
00

使用文件状态,请参见或在cobol示例中搜索文件状态。也可以尝试转到002阅读