当前位置: 首页 > 知识库问答 >
问题:

用压缩数据将COBOL生成的顺序文件转换为字母数字文件

徐旻
2023-03-14

我有一个COBOL程序,它生成具有以下结构的顺序文件:

FD ALUMNOS-FILE.
01 ALUMNOS-DATA.
    88 EOF                 VALUE HIGH-VALUES.
    05 STUDENTID           PIC 9(7).
    05 STUDENTNAME         PIC X(10).
    05 FILLER              PIC X(8).
    05 COURSECODE          PIC X(4).
    05 FOO                 PIC S9(7)V USAGE COMP-3.

如果我在记事本++中打开该文件,我会看到奇怪的unicode符号,这些符号是由comp-3变量引起的,很难读取。类似于下面图像的内容(图像来自另一个文件):

有没有办法不使用COBOL重写这个顺序文件以使其可读?也许使用像VBS这样的脚本语言?任何提示或建议将被感谢,如果你需要更多的信息让我知道,我会编辑的帖子。

共有1个答案

梁丘琛
2023-03-14

我建议看一下最后的Cobol问题

但是RecordEditor允许您使用Cobol抄写本查看/编辑Cobol文件。在RecordEditor中,如果需要,可以将文件导出为Csv、Xml。

正如在上一个Cobol问题中所提到的,有几种在Java中读取Cobol文件的解决方案,可能还有一些在其他语言中读取Cobol文件的解决方案。

要将Cobol Copybook导入到RecordEditor中,请选择:Record Layout>>>import Cobol Copybook

File-Structure控制文件的读取方式。如果所有记录的长度相同(不返回carraige),则使用固定长度二进制文件结构。

支持的其他结构包括

    null

注意:在Record Editor 0.94.4中,使用固定长度二进制文件结构,您可以在基本文本编辑器中编辑固定长度的文本文件。

注:我是RecordEditor的作者

对于简单的Cobol文件,可以使用以下转换实用程序(基于JRecord):

    null

RecordEditor有一个生成Java/JRecord代码的Generate选项。参见[RecordEditor代码生成说明][8]

 类似资料:
  • 在COBOL中,我从顺序行文件中读取。一行行,到EOF,诸如此类的 行的长度从40到80个字符不等。我需要知道,每行有多少个字符。但是行可以以一些空格结束,我也需要计算。所以我不能在程序中从变量取字符串的长度。READ语句是否有返回值,它返回已读行的字符数(直到达到CRLF)?

  • 我的问题是EBCDIC编码的文件有30个字节被打包,需要解压缩才能获得实际值。我正在尝试使用PHP包/解包功能以及Perl的方法,但没有找到运气。我得到的价值似乎不是我正在寻找的确切价值。我试着用C C H H N打开它。 假设该文件保存EBCDIC编码的数据;pack字段位于635-664位置,30字节长数据1=9字节数据2=9字节数据3=3字节数据4=3字节数据5=3字节数据6=3字节 PHP

  • 所以我是计算机科学的新手,我们被要求做的一件事是尝试创建一个程序,首先将用户输入的一个单词转换成一个数字串,a=1,b=2,z=26等等,还有一些其他的事情,因为它们是扩展,我现在不想讨论。诚然,她说她不介意我们完成它,因为这是我们今天的第一节java课程。 有鉴于此,有人能给我一些关于如何做到这一点的建议吗?我不想让一段完整的代码完全做到这一点,因为我需要学习,因此非常感谢指导之手。到目前为止,

  • 属于。也是。 我在表中有一个字段,我希望将其值移到另一个字段中,该字段应包含的值。和都是字母数字字段。请建议合适的方法来实现这一点。

  • 我试图解压缩一个csv文件并将其传递给熊猫,这样我就可以处理这个文件了。 到目前为止,我尝试的代码是: 在最后一行之后,尽管python能够获取该文件,但在错误的末尾我得到了一个“不存在”。 有人能告诉我我做错了什么吗?

  • 我使用Ubuntu OS中的RawTherapee应用程序将RAW文件转换为TIF。 是否存在任何专有问题或与Adobe名称使用有关的任何问题?我喜欢使用开源工具和应用程序。请把你关心的问题告诉我。