Ich habe eine int-Zahl in einem Byte-Array gespeichert. Aus diesen Bytes möchte ich jetzt den int wieder zusammensetzen. Derzeit mache ich das wie folgt:
Kommt auch eine halbwegs vernünftige Zahl raus, bloß dass das letzte Bit des dritten Bytes falsch ist.
So wird aus ehemals 31635 --> 31379. Woran liegt das?
Code:
byte[] Header = new byte[4];
// Header wird vor dem nächsten Befehl mit der Zahl 31635 gefüllt
int Serie = (Header[3] << 24) + (Header[2] << 16) + (Header[1] << 8) + (Header[0]);
So wird aus ehemals 31635 --> 31379. Woran liegt das?