当前位置: 首页 > 知识库问答 >
问题:

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

轩辕华辉
2023-03-14

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

共有1个答案

巴帅
2023-03-14

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

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

  • jrecordeditor的代码记录它。这个项目可以使用Cobol copybook读写文件。它还可以处理同一文件中的多种记录格式。如果只是单一的记录格式,还有Csv2Cobol实用程序。JRecord非常适合于基于Cobol copybooks
  • 的通用实用程序
  • COBOL2J-如果文件中有多种记录格式,则可能会出现问题。
  • cb2xml-此包将读取Cobol抄写本并将其转换为XML。Xml包含所有的Cobol字段,其起始位置、长度、图片定义。最新版本有用于处理XML的JaXB示例代码。Cb2xml由JRecord、Cobol2J和一些商业包使用,例如Stirling Map editor、CA DevTest Solutions
  • LegStar
  • 还有其他开放源码项目,但大多数项目需要比上面更多的工作。
  • 有几个商业包可以转换到/从大型机Cobol文件。例如,IBM有可以为Cobol文件生成Java类的包。不过大多数都很贵。

以上所有的都将处理IBM大型机COBOL;JRecord对其他Cobol编译器的支持有限。

比尔无疑会提到,如果你选择上述任何一种,你将需要满足审计员的使用。也就是说,JRecord、Cb2Xml和Legstar可用于商业包或大型开源转换项目中。此外,Legstar看起来正在变得半商业化,所以检查许可证。

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

 类似资料:
  • 我需要将长数据格式(long)转换为宽格式(wide),条件如下(如果可能): 1) 所有数据文件都将是具有相同结构(id、名称、值)的长格式(long),但每个数据文件将具有不同的变量、值和变量数: 2) 每个数据文件将是不同的变量混合物(因子、整数、数字)。有些因素可能每个案例都有多个级别(从长远来看是水果和肉),我想为这些因素中的每个级别创建一个单独的虚拟变量(逻辑)。因子和数值变量的数量将

  • 问题内容: 我有一些格式的数据: 我需要将其转换为格式 如何在SQL中执行此操作? 问题答案: 如果您的得分列是固定的,并且不需要汇总,则可以使用多个和语句来生成所需的数据形状。例如 SQL小提琴:http://sqlfiddle.com/#!6 / f54b2 / 4/0

  • 问题内容: 我收到了JSON文件,但不知道如何读取。有转换器可以在其中生成漂亮的CSV文件,以便将其加载到MS Excel中吗?我不懂JSON,所以如果有人编写脚本或将我链接到可以完成此任务的脚本,那将非常棒。 我在http://json.bloople.net上找到了一些接近的东西,但是不幸的是,它是JSON到HTML。 编辑:jsonformat.com越来越近,但是它仍然不是CSV。 问题答

  • 您能告诉我如何使用java中的ApachePOI将html表数据呈现到Excel单元格中吗。我有以下要求,比如。。 但它只是作为文本字符串...在这里输入图像描述

  • 我有一个文件包。crd。伊滕是这样的 我需要将其导入到以下格式的excel文件中。 我试过这个代码,但不起作用 请帮忙

  • 问题内容: 这是经典的训练格式。 我曾经使用代码进行训练,但是据我了解,使用CLI训练方法会更好。但是,我的格式是这样。 我已经找到了用于这种类型转换的代码片段,但是每个代码片段都在执行而不是冒空-这让我想,他们是在训练现有模型而不是冒空吗? 这个块看起来很简单: 运行此代码会抛出: 找不到模型“ en”。 它似乎不是快捷方式链接,Python包或数据目录的有效路径。 我很困惑如何在空白处使用它。