需要将Cobol数据文件转换为CSV,Excel

我有一个没有文件扩展名的COBOL数据文件。 我需要将其转换为任何types的现代数据文件,如上所述。 我可以用Windows上的记事本打开文件。

这里是一个代码里面的例子

0~ 9401131218264194011312182641 > ֽ ֽ A ֵ @ֽB1993120901758501000232GE93DO 2PECALR 1MF000232Y A10000 @ֽB1993120901758601004407GE93DO % 2PECALR 1MF004407Y A10000 @ֽB1993120901758701005444GE93DO `2PECALR 1MF005444Y A10000 @ֽB1993120901758801000008GE93DO 2PECALR 1MF000008Y A10000 @ֽB1993120901758901001518GE93DO €2PECALR 1MF001518Y A10000 @ֽB1993120901759001000102GE93DO €2PECALR 1MF000102Y A10000 @ֽB1993120901759101001605LA93LA 2 2MF001605N A20000 @ֽB1993120901759201001076GE93DO P 2PECALR 1MF001076Y A10000 @ֽB1993120901759301001608GE93DO % 2PECALR 1MF001608Y A10000 @ֽB1993120901759401007044GE93DO 5 2PECALR 1MF007044Y A10000 @ֽB1993120901759501000329GE93DO P 2PECALR 1MF000329Y A10000 @ֽB1993120901759601000613MM93MS P 2PECALR 1MF000613Y A10000 @ֽB1993120901759701000516MM94MS 2PECALR 

我甚至不知道从哪里开始寻找如何做到这一点。 任何帮助将非常感激。

你在这里得到的不是一个真正的COBOL数据文件本身。 这是一个平面的数据文件没有强加给它的结构。 当然可以用COBOL程序编写。

你需要理解这一点是一个定义各种数据字段甚至是什么的副本。 虽然我不能肯定,如果我不得不冒险猜测,我会说这是头文件

0~ 9401131218264194011312182641 > ֽ ֽ A ֵ

然后你有多个logging,每个logging从@开始。 这可能是一个logging:

 @ֽB1993120901758501000232GE93DO 2PECALR 1MF000232Y A10000 

现在你需要的是结构。 你有权访问COBOL源代码吗? 如果没有它(或者抄本),恐怕没有办法确定这些数据是什么意思。

如果您必须反复执行此操作,或者文件非常长,则可以select两项

用cobol编写一个程序,在字段之间添加逗号并创build一个新文件。 然后,您可以在Excel中将该文件作为csv打开。

要么

写一个excelmacros。 在一张纸上提供结构,即一列中的字段types和另一列中的长度。 macros将读取文件的结构,并根据其长度将文本分成多列。 你可以看看这个链接了解如何编写macros的一些想法。

那么,因为它的COBOL输出每个字段长度将从logging到logging一致。

如果这是一次性的任务,我只是在Excel中打开它,并使用文本到列和手动设置分割点,以获得每个字段到自己的单元格。

如果这不是一次性的,我只是修改产生输出的程序在输出logging中的每个字段之间有一个逗号。

RecordEditor / JRecord中的FileWizard可以在文件中searchMainframe Cobol字段。 FileWizard结果可以存储在Xml文件中用于其他语言,也可以使用复制function从Ebcdic复制到Ascii固定格式或CSV格式。

文件向导中有一些过时的文档