【发布时间】:2011-12-12 12:12:30
【问题描述】:
在 java 卡中只使用小数据类型(字节和短)。 我正在尝试将字节转换为短字节,以便我可以使用它来检查条件等。 当使用java卡中的类型转换将字节转换为short时,它会给我一些其他负数。 请告诉我如何将ff存储在单字节中的(11111111)转换为short。
我正在使用:
- 智能卡类型 = 联系人卡
- 使用java卡2.2.2
- 与 jcop 一起使用 apdu
【问题讨论】:
在 java 卡中只使用小数据类型(字节和短)。 我正在尝试将字节转换为短字节,以便我可以使用它来检查条件等。 当使用java卡中的类型转换将字节转换为short时,它会给我一些其他负数。 请告诉我如何将ff存储在单字节中的(11111111)转换为short。
我正在使用:
【问题讨论】:
Java Card 语言不就和 Java 一样吗?然后就可以写了
shortvar = bytevar&0xFF;
【讨论】:
shortvar = (short) (bytevar & (short) 0xFF).
private static final short UNSIGNED_BYTE_MAX = 0xFF;)
你可以使用 javacard.framework.Util.makeShort(byte b1, byte b2) 方法。
【讨论】:
我知道你已经有了答案,但据我所知,好的方法是使用 javacard.framework.Util makeShort 方法,当你给出 2 个字节时它会返回短。
【讨论】: