Recherche…
STRINGVAL ... Move -versus- STRING
IDENTIFICATION DIVISION.
PROGRAM-ID. STRINGVAL.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 WORK-AREAS.
05 I-STRING PIC X(08) VALUE 'STRNGVAL'.
05 O-STRING PIC XBXBXBXBXBXBXBX.
88 O-STRING-IS-EMPTY VALUE SPACES.
PROCEDURE DIVISION.
GENESIS.
PERFORM MAINLINE
PERFORM FINALIZATION
GOBACK
.
MAINLINE.
DISPLAY 'STRINGVAL EXAMPLE IS STARTING !!!!!!!!!!!!!!'
DISPLAY '=== USING MOVE STATEMENT ==='
MOVE I-STRING TO O-STRING
DISPLAY 'O STRING= ' O-STRING
DISPLAY '=== USING STRING STATEMENT ==='
SET O-STRING-IS-EMPTY TO TRUE
STRING I-STRING ( 1 : 1 ) DELIMITED BY SIZE
' ' DELIMITED BY SIZE
I-STRING ( 2 : 1 ) DELIMITED BY SIZE
' ' DELIMITED BY SIZE
I-STRING ( 3 : 1 ) DELIMITED BY SIZE
' ' DELIMITED BY SIZE
I-STRING ( 4 : 1 ) DELIMITED BY SIZE
' ' DELIMITED BY SIZE
I-STRING ( 5 : 1 ) DELIMITED BY SIZE
' ' DELIMITED BY SIZE
I-STRING ( 6 : 1 ) DELIMITED BY SIZE
' ' DELIMITED BY SIZE
I-STRING ( 7 : 1 ) DELIMITED BY SIZE
' ' DELIMITED BY SIZE
I-STRING ( 8 : 1 ) DELIMITED BY SIZE
' ' DELIMITED BY SIZE
INTO O-STRING
DISPLAY 'O STRING= ' O-STRING
.
FINALIZATION.
DISPLAY 'STRINGVAL EXAMPLE IS COMPLETE !!!!!!!!!!!!!!'
.
END PROGRAM STRINGVAL.
Pas un exemple, mais ....
semblait la seule façon d'ajouter un commentaire. Une chose facile à oublier est que si vous enchaînez certaines variables comme l'exemple ci-dessus et que la longueur résultante est plus courte que celle qui était à l'origine dans la variable de réception (o-string ci-dessus), les caractères "suivis" restent en place.
Par exemple, si o-string contient "la chaîne contient ces données" et que vous enchaînez "fred & Bert", alors o-string contiendra "fred & Bertontains ces données" (si j'ai bien compté).
Summa summary, prenez l'habitude de déplacer TOUJOURS les espaces dans votre variable de réception avant de commencer à jouer.
Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow