Socket socket = new Socket("localhost",2019);
InputStreamReader in = new InputStreamReader(socket.getInputStream());
char a;
String str = "";
while ((a= (char) in.read()) != -1){
str += a;
}
Я с сервера(построен на SocketChannel) отправляю сообщение. Через дебагер посмотрел что сообщение приходит полностью, но после того как пришел последний символ он просто останавливается на строке с while. Я предполагаю что это из-за того что сревер на SocketChannel.
P. S.
Я решил эту проблему тем, что после каждого сообщения добавляю ";" , и в while прописываю ждать до запятой. Просто интересно почему так происходит и может я делаю что либо не так.