0

我正在尝试接受来自 jcl 的输入,例如“John Snow”并从我的 cobol 程序运行它我使用 JUSTIFIED RIGHT VALUE SPACES 将字符串移动到右侧但是我需要使用我的 cobol pgm 删除额外的空格。

例如我的工作存储是:

01 ALPHA-ITEM PIC X(50).                           
01 MOVE-ITEM REDEFINES ALPHA-ITEM PIC X(50).       
01 NUM-ITEM PIC X(50) JUSTIFIED RIGHT VALUE SPACES.

在我的程序部门

ACCEPT ALPHA-ITEM.         
MOVE MOVE-ITEM TO NUM-ITEM.
DISPLAY NUM-ITEM.  

它在屏幕右侧显示“John Snow”,但我不知道如何删除多余的空格。

4

2 回答 2

2

你需要这样的东西:

01 ALPHA-ITEM PIC X(50).                                 
01 WS-INDEX PIC 99.

ACCEPT ALPHA-ITEM  

PERFORM VARYING WS-INDEX 
    FROM 50 BY -1
   UNTIL ALPHA-ITEM(WS-INDEX:1) NOT EQUAL SPACE
         OR WS-INDEX < 1
END-PERFORM

DISPLAY ALPHA-ITEM(1:WS-INDEX).  

此代码将接受 alpha 项,然后运行循环以找出数据实际有多长。然后它将从位置 1 开始显示该字段,直到在循环中设置的计数器。

于 2017-08-02T19:17:48.547 回答
0

还有..不受欢迎的原因。将由空格分隔的 MOVE-ITEM 解串成 NUM-ITEM。

于 2018-12-04T21:14:46.573 回答