gpt4 book ai didi

java - JTOpen 用户空间读取

转载 作者:行者123 更新时间:2023-12-01 09:15:18 25 4
gpt4 key购买 nike

当使用 JTOpen 中的 UserSpace 对象从 IBMi 系统读取数据时,使用 UserSpace.read() 方法将数据从 EBCDIC 转换为 ASCII 还是保留在 EBCDIC 中。

如果确实如此,是否有办法告诉它不要转换它或以不同的方式读取该数据。或者有没有办法只获取数据的字节表示。下面是我在查看用户空间时看到的内容,在完美的世界中,将其作为长字符串或字节数组是理想的。

24787779 5158B126 69675175 72536799
9BC7D489 85795158 B1276A96 A38580A3
A7676B37 25797288 A3A845D7 9996A674
74735496 99C7D389 8788A459 B2276866
96A38C83 A3969036 26797679 53A840D7
97D9D6E3 C5C3E3D6 D98794C9 C7C8E3E8

如果重要的话,我尝试读取的用户空间使用 CCSID 65535。

谢谢。

最佳答案

*USRSPC 对象实际上只是一 block 命名的内存。里面的数据可以包含任何你想要的数据。它可以包含以 EBCDIC、某些 ASCII 代码页、UTF-8、UTF-16 或您喜欢的任何内容编码的文本。它可以包含 4 字节整数数组或矩阵或指针链接列表或任何其他非文本数据。它可以包含文本和非文本数据的混合:这完全取决于您的应用程序写入的内容。

UserSpace JT400 API 不知道 *USRSPC 对象中包含的数据是什么,因此它只读取原始字节。您需要将这些字节读入字节数组,并使用 CharConverter.byteArrayToString 方法将其转换为 Java String 对象。当然,您必须传递有效的文本 CCSID,而不是 65535。

关于java - JTOpen 用户空间读取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40593409/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com