Я пишу сокет-клиент, в котором я отправляю данные на сервер (используя getOutputStream ()), ниже мой код
this.wr = this.socket.getOutputStream();
wr.write(hexStringToByteArray(messageBody));
wr.flush();
Выше можно успешно отправить данные.1) но когда я пытаюсь прочитать ответ, используя
this.in = new ObjectInputStream(this.socket.getInputStream());
Поскольку я не знаю, какой формат возвращает сервер.Получение ошибки в этой строке
"java.io.StreamCorruptedException: неверный заголовок потока".
Я не уверен, почему?Я знаю, что значения, которые я получу, будут в шестнадцатеричном формате, т. Е. Скажем, 600185 будет таким же, как в 60 01 86 ....
Может ли кто-нибудь помочь мне, пожалуйста, чтобы преодолеть эту ошибку.
2) Также в случае, если я не получу никакого ответа по истечении определенного времени, как закрыть сокетное соединение.
Заранее благодарю всех.