Чтение данных из файла без использования выполнения до и в конце - PullRequest
0 голосов
/ 29 января 2019

Я пытаюсь прочитать данные, используя Cobol, соблюдая следующее ограничение:

НЕ разрешено использовать:

Предложение AT END

PERFORM-UNTIL

IF-ELSE

Оператор переключения регистра

Оператор итерации

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

Я пытаюсь смоделировать цикл с кодом выше, но я не знаю, как мне написатьЕсли оператор IF, есть ли способ обнаружить EOF без использования AT END?

1 Ответ

0 голосов
/ 29 января 2019

Когда вы впервые определяете свой файл в file-control, вы можете определить его следующим образом:

select my-file
    assign to 'ifile.txt'
    organization is line sequential
    file status is fs. 

сейчас, fs значение переменной изменяется при чтении из файла.Например, если ошибок не найдено, fs принимает значение 00.Дополнительную информацию можно найти здесь .

Если вам не разрешено использовать перечисленные вами операторы, вы можете вызвать свою функцию, которая рекурсивно читает строку, пока fs не будетравно 00.

...