我正在使用实用程序vutil:
将一些COBOL dat文件转换为ASCIIvutil -extract input.dat > output.txt
我无法从COMP数据字段中获得人类可读的响应。 这是我的FD文件的一部分
05 FAT-TIPOFT PIC 9(4).
05 FAT-DINI PIC 9(8).
05 FAT-DFIN PIC 9(8).
05 FAT-IMPON PIC S9(7)V99 COMP.
05 FAT-INPS PIC 99.
05 FAT-IMPINPS PIC S9(7)V99 COMP.
05 FAT-IVA PIC 99.
这里有一个ASCII转换示例:
0107200230062003 ‚p00 20 ³° 6 00 6
转换仅适用于NON-COMP字段
是否有任何其他命令或替代实用程序或技术来转换COMP字段?
注意我不想进入Cobol世界,我只想转换数据并摆脱它!
答案 0 :(得分:2)
可能的解决方案:
你可能不想写一个Cobol程序,对于一个文件,它可能是最快&最便宜的解决方案。
有各种商业软件包声称可以读取Acu Cobol文件,但可能很贵。
对于这个文件,您可以查看RecordEditor,稍微弄清楚可能(我的意思是可能)这行得通。对于此Cobol-Copybook,请尝试将其导入为Mainframe或Open-Cobol副本。我怀疑Open-?Cobol Microfocus可能会更好。 (注意:我是RecordEditor的作者)
我认为数据可能是二进制文件和原始数据,我无法确定。
提供的数据中的前16个字节看起来像2个日期,所以我已经与FAT-DINI / FAT-DFIN对齐了,这只是猜测:
0107200230062003 ‚p00 20
22223333333333333333008733000033
00000107200230062003002000000020
我得到的recordEditor中的:
在RecordEditor lib目录中,有一个用于“定义Cobol方言”的JRecord.properties。