Conversion int vers byte non signé
Bonjour à tous,
existe il une solution pour obtenir un byte non signé en java ?
Soit le code suivant :
Code:
1 2 3 4 5
| int hauteur = 240;
byte[] header = new byte[5];
header[3] = (byte) (hauteur & 0xff)
header[4] = (byte) ((hauteur >> 8 ) & 0xff); |
Avec cette solution je vais me retrouver avec -16 dans la case 3.
J'ai tout essayé mais à partir du moment ou j'induis un cast en byte le resultat passe en signé.
Et du coup sans cast pas moyen de faire un simple
Code:
1 2 3 4
| private byte toUnsigned(byte b)
{
return (byte) ((b >= 0) ? b : 256 +b);
} |
L'autre appli avec laquelle je dois communiquer attends impérativement un byte non signé, comment faire ?