微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何定义ebcdic文件的记录结构?

如何解决如何定义ebcdic文件的记录结构?

我在hdfs中有ebcdic文件,我想加载数据以触发数据帧,对其进行处理并以orc文件的形式加载结果,我发现有一个开放源码的解决方案,它的前缀为cobrix cobrix,可以获取数据从ebcdic文件获取,但开发人员必须提供一个副本簿文件,这是一个架构定义。 我的ebcedic文件的几行显示在所附的图像中。 我想获取ebcdic文件的抄写本的格式,本质上我想阅读他的长度为17的 vin vin_data ,最后为 vin_val 长度是100。

谢谢

enter image description here

解决方法

如何定义ebcdic数据的副本文件?

你没有。

一本抄写本可用作记录定义(= 方式的存储方式),它与其中存储的数据编码无关。

这留下了一个问题:“我如何定义记录结构?”

您将需要字段的数量,字段的长度和类型(可能不仅是select *,t.next_order,( select min(orderid) from orders o2 where o2.createdate = t.next_order ) next_order_id from orders o1 cross apply ( select min(createdate) next_order from orders o2 where o1.canceldate < o2.createdate ) t ),然后只需使用一些奇特的名称进行定义即可。理想情况下,您只需从COBOL程序中编写文件就可以得到原始记录定义,然后将其放入一本抄写本中(如果尚未放入该抄写本中),然后使用它。

您的链接上有samples,该文本实际上显示了一个字帖的外观,如果您对定义不满意,请使用定义的字帖编辑问题,我们可能会为您提供帮助。

,

根据您对问题的评论并查看输入文件,您可以从此开始。

01  VIN-RECORD.
    05  VIN                 PIC X(17).
    05  VIN-COUNT           PIC S9(5) COMP-3.
    05  VIN-VALUE           PIC X(100).

我猜测第二个字段是COMP-6,基于六个示例,所有示例均以C字节结尾。这表示COMP-3为正值。 D字节将为负COMP-3值。 F字节表示无符号的COMP-3值。

第三个字段是可变长度,并在右边填充空格。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。