【问题标题】:How to build dataframe from cobol and ebcdic file with COMP fields using Cobrix?如何使用 Cobrix 从带有 COMP 字段的 cobol 和 ebcdic 文件构建数据框?
【发布时间】:2021-05-21 18:32:16
【问题描述】:

我首先尝试使用 cobrix 从大型机源构建一个简单的数据框,以了解它如何处理 ebcdic 文件。

我的输入看起来像this。 (十六进制):313030100C3230301A0C。如果我用 Notepad++ 快速打开:raw_data

我使用这些options 来读取我的数据并将其转换为数据框。 我已经尝试了所有支持 ebcdic 编码的值,但均未成功。我还尝试将 .cobol 文件中的 S9(3). 更改为 999.9(3). 但没有更改任何内容。

我的output 看起来不像我原来的expecting

它适用于“经典”ascii 编码并且没有“COMP-3”。 你能帮我找出为什么我的 df 看起来不像预期的那样吗?

非常感谢!

【问题讨论】:

  • 请内联粘贴您的代码,而不是使用屏幕截图。
  • 您提供的数据示例是 ascii 而不是 ebcdic。我认为这将是一个二进制文件(它在选项文件中被归类为文本)。数据看起来像有效的 ASCII,其中包含 comp-3 字段。 EBCDIC 到 ASCII 的转换通常会损坏二进制数据字段。

标签: dataframe cobol comp-3


【解决方案1】:

您的输入数据已经从 EBCDIC 转换为 ASCII。

第一个 s9(3) 字符“100”应该是 EBCDIC 中的十六进制“F1F0F0”。

但是,您的文件被传输了,它将所有字节转换为 ASCII,因此损坏了无效的 EBCDIC 的 comp-3 值。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-11-03
    • 2016-09-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-13
    • 2019-09-22
    • 1970-01-01
    相关资源
    最近更新 更多