Я устанавливаю программное обеспечение, которое отправляет сообщение в байтах [] и получает поток байтов.
Пример отправки массива
byte[] replayStatuse = new byte[] { 0x55, (byte) 0xAA, 0x0B, 0x00, 0x0A,
0x1C, 0x03, 0x41, 0x01, 0x00 }
и я получаю нечто подобное. Я прошел тест с использованием PacketSender, и я могу видеть ответ в шестнадцатеричном формате, когда спрашиваю о статусе.
Я использую
InputStream socketInputStream = socket.getInputStream();
Я уже пробовал различные методы, которые я нашел здесь в стеке и на других форумах, но он не работал.
Методы как это:
int read;
while((read = socketInputStream.read(buffer)) != -1)
{
String output = new String(buffer, 0, read);
System.out.print(output);
System.out.flush();
}
Я пытался использовать int read типа char, byte или другого формата, но ничего. В моей консоли печатается странный символ (U)
Я использую:
InputStream socketInputStream = socket.getInputStream();
socketInputStream.read();
Я ожидаю получить байт [] и уметь читать с помощью функции:
System.out.println(Arrays.toString(byteArray));
Так что я могу затем обрабатывать различные случаи и преобразовывать, если нужно, в String или HEX
Спасибо всем