通过USS中的xlc fgets()控制从ASCII到EBCDIC的自动转换

问题描述 投票:0回答:1

我在z / OS USS上有一个应用程序,它愉快地读取EBCDIC(IBM-1047)和ASCII(ISO8859-1)文件,这些文件已使用char[]缓冲区中的任一编码进行了标记。从外壳启动时,C运行时将自动将fgets()中的文件内容转换为EBCDIC,以供程序使用。这样就可以与以EBCDIC本地编码的文字进行比较。

但是,当通过Jenkins(Java JVM 1.8)运行程序时,自动转换被抑制,fgets()不变地返回数据,因此返回ASCII。我尝试将用户.profile/etc/profile中的每个环境变量提供给JVM,并验证它们是否在程序的envp中。

有人知道该功能的控件在何处记录或可用吗?

c zos
1个回答
0
投票

控制自动转换的方法之一是_BPXK_AUTOCVT=ON。这里的article更详细地描述了该问题。

以下是代码段:

enter image description here

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.