首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将VB EBCDIC文件转换为ASCII,其中copybook记录以01分隔

将VB EBCDIC文件转换为ASCII,其中copybook记录以01分隔
EN

Stack Overflow用户
提问于 2021-10-05 10:06:51
回答 2查看 106关注 0票数 1

我们有一个EBCDIC文件,它是VB(可变长度)记录。与此EBCDIC相对应,我们有用01类型分隔记录的copybook,单个记录也包含压缩的十进制字段。请建议我们如何将这种EBCDIC文件转换为ASCII。

由于公司安全策略,我们无法安装RecordEditor。我们使用的是JRecord库,我们创建的对象如下:

代码语言:javascript
复制
ICobolIOBuilder iob = CobolIoProvider.getInstance() 
    .newIOBuilder(copybookName) 
    .setCopybookFileFormat(Convert.FMT_MAINFRAME) 
    .setFileOrganisation(Constant.IO_VB) 
    .setSplitCopybook(CopybookLoader.SPLIT_01_LEVEL) .setFont("cp037");

之后,当我们使用AbstarctLineReader逐行读取文件时,它会带有许多特殊字符。请在这方面提出建议。

EN

回答 2

Stack Overflow用户

发布于 2021-10-12 10:25:06

压缩小数不是“在EBCDIC中”,也不在任何其他代码页中。压缩十进制是IBM大型机(和其他)处理器通过一组本机机器指令支持的二进制数字格式。它是BCD (二进制编码十进制)格式的实现。请参阅维基百科上的Binary coded decimal

票数 1
EN

Stack Overflow用户

发布于 2021-10-05 10:53:09

基础知识

在执行其他操作之前,您需要:

  • 的工作是如何区分不同类型的记录。它可以是记录开头的字段(名称中可能有记录类型)。
  • 如果要从大型机传输文件,则需要小心

转换

可能有用的包

RecordEditor也可以将文件写为Xml。

RecordEditor提供了一些代码生成选项

最后,我们来看看how to generate Java~JRecord code

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69448542

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档