Premier programme avec fichier

Lecture d’un fichier texte – Premier programme avec fichier

Ce programme montre le squelette classique pour lire un fichier texte séquentiel en COBOL :

Le code expliqué

IDENTIFICATION DIVISION.
PROGRAM-ID. PROGRAM-NAME.

ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
    SELECT FILE-NAME
        ASSIGN TO "pacta-filename.txt"
        ORGANIZATION IS LINE SEQUENTIAL.

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

WORKING-STORAGE SECTION.
01 VARIABLE-NAME   PIC X(20) VALUE SPACES.
01 EOF-FLAG        PIC X VALUE "N".
   88 EOF          VALUE "Y".

PROCEDURE DIVISION.
PARAGRAPH-NAME.
    OPEN INPUT FILE-NAME
    READ FILE-NAME
        AT END
            SET EOF TO TRUE
        NOT AT END
            DISPLAY "Hello Pacta Cobol"
            DISPLAY FIELD-1
    END-READ
    CLOSE FILE-NAME
    STOP RUN.
        
Télécharger le code

Ce que fait vraiment ce programme

Hello Pacta Cobol 0123456789

Explication ligne par ligne

→ Il lit seulement la première ligne du fichier pacta-filename.txt et affiche ses 10 premiers caractères (ou moins si la ligne est plus courte).

Points importants / Améliorations à connaître :

Version corrigée et complète (toutes les lignes)

           PERFORM UNTIL EOF
               READ FILE-NAME
                   AT END
                       SET EOF TO TRUE
                   NOT AT END
                       DISPLAY FIELD-1
               END-READ
           END-PERFORM
        

C’est la structure que vous verrez 95 % du temps pour lire un fichier texte séquentiel en COBOL.