Suche…


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.

Kein Beispiel, aber ....

schien die einzige Möglichkeit, einen Kommentar hinzuzufügen. Es ist leicht zu vergessen, dass, wenn Sie einige Variablen wie im obigen Beispiel mit einer Zeichenfolge versehen und die resultierende Länge KÜRZER ist als die ursprüngliche Variable in der Empfangsvariablen (oben in der o-Zeichenfolge), die "nachgestellten" Zeichen verbleiben.

Wenn zum Beispiel o-string "die Zeichenfolge enthält diese Daten" enthält und Sie "fred & Bert" aneinanderreihen, enthält o- string "fred & Bertontains diese Daten" (wenn ich richtig gezählt habe).

Summa Summary, gewöhnen Sie sich IMMER daran, Leerzeichen in Ihre Empfangsvariable zu verschieben, bevor Sie mit dem Stringing beginnen.



Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow