COBOL缺少有用的库和实用程序。大多数COBOL程序员只是重新发明轮子,自己编写代码。
我正试图在COBOL中将日期格式从DD-MON-YYYY
更改为YYYY/MM/DD
,我想知道这是否可行。
我一直在搜索,但我找不到任何实用程序或日期功能来更改它。
我尝试过的:
- 使用
unstring
并将JAN转换为01
,将FEB转化为02
,依此类推
类似(未经测试的代码!(:----
01 OLD-DATE.
05 OLD-DD PIC XX.
05 FILLER PIC X.
05 OLD-MON PIC XXX.
05 FILLER PIC X.
05 OLD-YEAR PIC XXXX.
01 NEW-DATE.
05 NEW-YEAR PIC XXXX.
05 FIRST-SLASH PIC X VALUE '/'.
05 NEW-MM PIC 99.
05 SECOND-SLASH PIC X VALUE '/'.
05 NEW-DD PIC XX.
01 M-TAB.
M PIC XXX OCCURS 12.
01 M-VALS REDEFINES M-TAB VALUE 'JANFEBMARAPRMAYJUNJULAUGSEPOCTNOVDEC'.
01 M-X PIC S9(8) COMP VALUE 0.
.......
MOVE OLD-YEAR TO NEW-YEAR.
PERFORM VARYING M-X FROM 1 TO 12
IF OLD-MON = M(M-X)
MOVE M-X TO NEW-MM
END IF
END PERFORM.
MOVE OLD-DD TO NEW-DD.