首页 > 解决方案 > COBOL 文件格式

问题描述

我们正在尝试将 .txt 文件加载到 Trillium 中进行分析,并将 .cbl 文件加载到数据模式中。

.txt 文件的数据如下所示:

    Record 1: 1234560001001
    Record 2: 12345670001001

COLUMN_1 最多有 7 个字符,COLUMN_2 必须是 4 个字符,COLUMN_3 必须是 3 个字符。

我创建了一个 COBOL 文件,如下所示:

    02 COLUMN_1 PIC X(07).
    02 COLUMN_2 PIC X(04).
    02 COLUMN_3 PIC X(03).

但是 Trillium 已将其解析为:

    1234560 0010 01
    1234567 0001 001

我不确定如何纠正这个问题。有什么想法吗?


标签: cobol

解决方案


您需要正确证明您的输入记录。多种改组数据的方法。最简单的可能是

01 justright PIC X(14) JUSTIFIED RIGHT.

GnuCOBOL(以及据我所知的其他人)还包括支持

CALL "C$JUSTIFY" USING source-field "R" END-CALL

修改了字段的大小。14 在这种情况下。

但是,如果您拥有的只是记录布局的外部解析器,那么正如 Rick 评论的那样,您可能需要根据发往 COLUMN_1 的数据长度的规则编写代码。


推荐阅读