栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何将解压缩的十进制转换回COMP-3?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何将解压缩的十进制转换回COMP-3?

用压缩十进制-123表示为X‘123d’(最后一个ny
c,d或f是符号)。处理压缩十进制的最简单方法之一是简单地将字节转换为十六进制字符串(或根据需要反之亦然),然后使用常规字符串操作。这可能不是最有效的,但是很容易实现。

因此,将Integer(值)转换为压缩的十进制是大致步骤(注意:我尚未测试代码)

String sign = "c";if (value < 0) {    sign = "d";    value = -1 * value;}String val = value + "d"byte[] comp3Bytes = new BigInteger(val, 16).toByteArray();

以下是一些与comp3相互转换的示例代码,要从字节数组中检索压缩的十进制,请参见http://record-
editor.svn.sourceforge.net/viewvc/record-
editor/Source/JRecord/src中的


getMainframePackedDecimal方法/net/sf/JRecord/Common/Conversion.java?revision=3&view=markup

并设置打包的十进制,请参见http://record-editor.svn.sourceforge.net/viewvc/record-
editor/Source/JRecord/src/net/sf/JRecord/Types/TypePackedDecimal.java?revision=3&view中的
setField =标记

这两个例程均采用字节数组,起始位置和字段位置的长度。

在网络上还有其他执行此操作的示例(我认为JRanch也具有执行转换的代码),进行一些谷歌搜索。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/507524.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号