Я получаю данные с аппаратного устройства.Я получаю это как массив байтов.Я хочу построить и сохранить строку, которая может показать мне данные массива байтов.Вот что у меня есть:
byte[] buffer = new byte[BUFFER_SIZE];
bytes = mmInStream.read(buffer);
String[] str = new String[bytes];
StringBuffer readMessage = new StringBuffer();
for(int i=0; i<bytes; ++i){
str[i] = Integer.toHexString(buffer[i]);
while (str[i].length() < 8){ //standarize size
str[i] = '0' + str[i];
}
readMessage.append(str[i]);
}
Основная проблема, с которой я столкнулся, заключается в том, что я получаю неожиданные байты при преобразовании байтов в строку.Я получаю чистые байты, поэтому я ожидаю, что значения будут в диапазоне от 0x00 до 0xFF.Тем не менее, некоторые из байтов преобразуются в байты, такие как 0xFFFFFF09.Почему это происходит ??