用Java将Excel转换为基于CopyBook格式的可变长度数据文件



我正在尝试将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.   

哪种Cobol方言????。不同的Cobol编译器的Numeric数据格式不同。还有相关问题或其他问题

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

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

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

Bill无疑会提到,如果您选择上述任何一项,您需要满足审计员的要求。也就是说,JRecordCb2XmlLegstar用于商业包或大型开源转换项目。此外,Legstar看起来将成为半商业化的,所以请查看许可证。


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

相关内容

  • 没有找到相关文章

最新更新