基本上,我想要的是將"123456"
這樣的字符串轉換爲無符號字節數組:[1, 226, 64]
。不過,我處處留心,我發現什麼是獲得2的補(簽字)字節數組[1, -30, 64]
:如何將表示一個整數的字符串轉換爲Java中的無符號字節數組?
byte[] array = new BigInteger("123456").toByteArray();
System.out.println(Arrays.toString(array));
OUTPUT:
[1, -30, 64]
那麼,怎麼能夠在Java中做了什麼?我想輸出是:
[1, 226, 64]
編輯:我知道字節只能容納多達127個,所以不是字節數組,我需要它是int數組。
Java中沒有'unsigned byte'類型,因此您必須將其轉換爲'signed short/int'數組。 – Crozin 2012-03-05 21:24:22