![](/img/trans.png)
[英]Same program in Kotlin produces different result with the one in Python
[英]J8583 LLLLBIN and LLLLVAR produces the different length padding result
LLLLVAR和LLLLBIN从相同的输入产生不同的长度。
试图将值“ 6832”传递到同一IsoMessage对象中,但是LLLLVAR返回“ 0004 6382”,而LLLLBIN返回“ 0008 36333832”。
源代码示例如下:
msg.setValue(60, "6832".toByteArray(Charsets.US_ASCII), IsoType.LLLLBIN, 10)//encodes to 000836333832
msg.setValue(60, "6832", IsoType.LLLLVAR, 10) //encodes to 00046382
我虽然都应该返回0004,但为什么结果都不同?
当您将ISO消息编码为文本时,LxBIN字段将其数据编码为十六进制,因此大小是您期望的两倍。 但是,解码器会解码十六进制数据,并在解析时为您提供字节数组。
仅当使用二进制格式对整个消息进行编码时,LxVAR和LxBIN字段的长度相同。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.