创建无符号字节以供串口使用

时间:2013-06-26 18:19:37

标签: java serial-port byte unsigned

我需要编写一个通过串口发送字节的java程序。我正在使用rxtx库。问题是在Java中一切都是签名的,在一个字节中我需要发送0xfc,但在Java中这是签名的,它定义为-4。那么如何在java中创建一个无符号字节,以便在一个字节中我可以从0发送到255?

3 个答案:

答案 0 :(得分:3)

没关系 - 你可以在必要的地方施放。如果您有一个允许发送字节的API,并且在Java中发送-4的字节,则位模式将与无符号字节0xfc相同。

如果您的值为intshort,范围为0-255,则只需将其转换为byte,并再次表示正确的位模式,即使如果原始值高于127,则该值将变为负值。

答案 1 :(得分:0)

对于字节bb & 0xFF将返回无符号整数值..这对你没关系吗?

答案 2 :(得分:0)

这将有效

public static int unsignedToBytes(byte b) {
    return b & 0xFF;
}