Konvertieren Hex-String in unsigned Byte-Array in Java
Bekomme ich die hex-strings von 14 bytes, z.B. a55a0b05000000000022366420ec
.
Ich benutze javax.xml.bind.DatatypeConverter.parseHexBinary(String s)
um ein array von 14 bytes.
Leider sind diese unsigend bytes wie der Letzte 0xEC
= 236 zum Beispiel.
Aber ich möchte es vergleichen bytes wie diese:
if(byteArray[13] == 0xec)
Seit 235 ist größer als ein byte mit Vorzeichen dieser wenn-Anweisung schlägt fehl.
Irgendeine Idee, wie man dieses Problem lösen in java?
Thx!!!
- Behandeln Sie es als ein unsigned byte und der Vergleich ist der gleiche.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen
if(byteArray[13] == (byte)0xec)
Können Sie fördern die byte-integer:
da java nicht unterstützt (wenigstens mit primitiven) jede unsigned Datentypen haben, sollten Sie sich über int wie Ihr Datentyp parse den string..
Arbeit mit der
arrayOfValues
...