将文件转换为显示格式的通用过程
Posted
技术标签:
【中文标题】将文件转换为显示格式的通用过程【英文标题】:A generic process to convert a file to display format 【发布时间】:2021-02-10 20:57:02 【问题描述】:是否有将 z/OS 上的文件转换为显示格式的通用过程? 我在 z/OS 上有几百个文件,我需要将它们转换为显示格式,然后才能将它们 NDM 转换为中端/Linux。这些文件包含压缩字段。我这样做是因为我希望文件以 ASCII 而不是 EBCDIC/二进制文件的形式落在中档。我还试图避免为每个文件编写 COBOL 转换例程。提前感谢您的帮助。
【问题讨论】:
那么,您正在寻找一种方法来获取包含压缩十进制、EBCDIC 和其他二进制数据的文件并使用实用程序进行转换? 是的。没错 【参考方案1】:大型机 SORT 实用程序通常擅长数据转换。与其他实用程序相比,它们通常使用更少的 CPU 并在更短的时钟时间内运行,这对于一次性进程来说可能不太重要。
【讨论】:
谢谢。我也试试这个。【参考方案2】:IBM 在大型机上有一个实用程序,可以满足您的要求。该实用程序称为 IEBPTCH(IEB 打印打孔)。文档是here
它不是自动的,但可能比编写代码更容易。来自文档
您可以使用 IEBPTPCH 打印或打孔 顺序或分区数据集或 PDSE。数据也可以“打印” 或“打孔”到磁盘或磁带上。
IEBPTPCH可用于打印或打孔:
完整的顺序或分区数据集或 PDSE 从分区数据集或 PDSE 中选择的成员 从顺序或分区数据集或 PDSE 中选择的记录 分区数据集或 PDSE 的目录 顺序或分区数据集或 PDSE 的编辑版本 包含双字节字符集数据的数据集 您可以为要打印或打孔的记录指定格式,也可以使用 IEBPTPCH 的默认格式。 默认格式为: 每个逻辑输出记录都从新的打印行或穿孔卡片开始。 每行打印由八个字符组成的组,由两个空格分隔。 一个打印行最多可包含 96 个数据字符。 每张穿孔卡片最多包含 80 个连续字节的信息。 无法打印的字符显示为空白。 当输入被阻塞时,每个逻辑输出记录由“*”分隔,每个块由“**”分隔。 每页将打印 60 行。
见RECORD
声明here
【讨论】:
非常感谢。我看看实用程序【参考方案3】:我知道您想避免编写新的 COBOL 程序。但是看看 RENDER 关键字。 我将在一行代码中将 COBOL 01 ... 分组转换为有效的 XML 结构。使用 SORT 或 IEBPTCH 只是用一种奇怪的语言进行编程。
【讨论】:
以上是关于将文件转换为显示格式的通用过程的主要内容,如果未能解决你的问题,请参考以下文章
JavaCV音视频开发宝典:实现Base64编码图片转换成图片文件通用转换器,以base64转png图片文件为例,其他图片格式也全部支持
JavaCV音视频开发宝典:实现Base64编码图片转换成图片文件通用转换器,以base64转png图片文件为例,其他图片格式也全部支持