Как читать байты больше, чем 127 в Java? - PullRequest
2 голосов
/ 23 октября 2010

хорошо, поэтому мой код для чтения байтов в int выглядит примерно так:

int offset = (byte << 16) | (byte2  << 8) | byte3;

И он читает байты "00 00 be" как -66.

Как мне прочитать его как 190, которым он должен быть?

Ответы [ 2 ]

5 голосов
/ 23 октября 2010
byte b = -66;
int i = b & 0xff;
1 голос
/ 23 октября 2010
    byte b = -66;
    int i = b < 0 ? b + 256 : b;

Для этого может быть полезно объявить вспомогательную функцию.

...