【发布时间】:2019-06-07 15:09:00
【问题描述】:
我正在编写 Java 代码,我需要在 Java 中将 int 数据转换为压缩十进制。 因为压缩十进制是一种旧格式(COBOL)。我发现的解决方案将converting int 处理为压缩十进制,但不是浮点数。 我有两个变量,长度和小数点后有多少个数字必须存储为压缩十进制。
例如:length = 6(in half a byte)
这意味着total length=3 bytes+1/5 byte+1/5 byte(To get even number of bytes)
存储小数点后的半字节数 = 2
(Unsigned) 12345.67 >> 1234567F
如果半字节数=4
(Unsigned) 12345.67 >> 3456700F
任何代码都将受到高度赞赏。
【问题讨论】:
-
很遗憾,我们不能简单地为您提供代码。请发布您想要的结果(您想要的输出示例)以及您所做的任何尝试。
-
我刚刚发布了更多详细信息
-
我发布的答案转换为压缩十进制。我不明白它是如何不起作用的。
-
好吧,您发布的代码将 long 转换为压缩十进制,不包括 float 和 big decimal。然后代码有一个稳定的数字5,这不是压缩十进制的工作方式,它主要是根据小数点后的长度和位数左右移动值。
标签: java data-conversion dataformat