Используя Android, я читаю данные (подписанный массив байтов) с микроконтроллера. Я понимаю, что BufferedReader
имеет размер буфера 8192 байта. Я отправляю около 200-300 байт в секунду, это означает, что в данный момент мне нужно подождать около 25-30 секунд (8192/300), прежде чем отладчик будет читать массив байтов.Как читать буферизованные данные по мере поступления, а не когда буфер заполнен?
Я хочу читать это каждый раз, когда Android получает массив 200-300 байт (каждый полный пакет TCP), есть способ изменить максимальный размер байта BufferedReader
, или есть альтернативный способ сделать это ?
private BufferedReader input;
input = new BufferedReader(new InputStreamReader(
this.clientSocket.getInputStream()));
...
...
while(true)
{
try
{
Log.i("WaitingForSomeData","");
String read = input.readLine();
byte[] bytes = read.getBytes();
}
Я попробую! :), что имеет смысл, спасибо большое! –
Спасибо за редактирование тоже! :) –