1

我正在尝试将 excel 转换为具有可变长度格式的 COBOL 数据文件。我能够将 excel 转换为制表符格式的文本文件。该数据文件涉及大约 400 个字段。我不想尝试为每个数据块设置块长度,而是喜欢在我的代码中利用 copybook 文件将数据转换为可变长度。我想知道是否有任何框架或建议来实现这一目标。

部分字帖格式

 05 EXTR-PRI-APPLICANT-DATA.
          10 EXTR-PRI-SOC-SEC-TAX-ID-NUM           PIC X(09).
          10 EXTR-PRI-FIRST-NAME                   PIC X(15).
          10 EXTR-PRI-MIDDLE-INITIAL               PIC X(01).
          10 EXTR-PRI-LAST-NAME                    PIC X(25).
          continues for 400 fields.   
4

1 回答 1

4

哪个Cobol方言 ????。对于不同的 Cobol 编译器,数值数据的格式是不同的。还有相关问题其他问题

无论如何看看这些java项目:

  • JRecord它基于 RecordEditor 的代码。该项目可以使用 Cobol Copybook 读写文件。它还可以处理同一文件中的多种记录格式。如果只是单一记录格式,还有Csv2Cobol实用程序。JRecord 非常适合基于 Cobol Copybooks 的通用实用程序
  • Cobol2J - 如果文件中有多种记录格式,可能会出现问题。
  • Cb2xml - 这个包将读取 Cobol 副本并将其转换为 Xml。Xml 包含所有 Cobol 字段,其中包含起始位置、长度、图片定义。最新版本有用于处理 XML 的 JaXB 示例代码。Cb2xmlJRecordCobol2J以及一些商业软件包使用,例如Stirling Map editorCA DevTest Solutions
  • 腿星
  • 还有其他开源项目,但大多数需要比上述更多的工作。
  • 有几个可用的商业软件包可以转换为 Mainframe Cobol 文件/从 Mainframe Cobol 文件转换。例如,IBM 有可以为 Cobol 文件生成 Java 类的包。不过大部分都很贵。

以上,都将处理 IBM Mainframe Cobol;JRecord 为其他 Cobol 编译器提供有限的支持。

比尔无疑会提到,如果您选择上述任何一项,您将需要满足这些用途的审核员。也就是说,JRecordCb2XmlLegstar用于商业包或大型开源转换项目。Legstar 看起来也正在变成半商业化的,所以请检查许可证。


披露:我编写了 JRecord、RecordEditor,并与 Peter 和 Jean-Francois 一起帮助编写了 Cb2Xml

于 2015-02-28T04:49:53.917 回答