我正在尝试学习java套接字编程,但是我在InputStream的读取功能上遇到了麻烦。起初,我创建了一个套接字来连接到服务器。连接建立后,服务器返回“连接建立”的消息,读取功能正常。然后我尝试向服务器发送字节消息,但我无法从 InputStream 读取数据,因为我的程序卡在“in.read(buf)”行。谁能指出我该如何解决这个问题。
Socket client = new Socket("xxx.xxx.xxx.xxx", 45000);
InputStream in = client.getInputStream();
OutputStream out = client.getOutputStream();
for (int i = 0; i < 5; i++) {
byte[] buf = new byte[1024];
int data_size = in.read(buf);
String msg = "";
for (int j = 0; j < data_size; j++) {
msg += String.valueOf((char) buf[i]);
}
System.out.println(msg);
out.write(65);
out.flush();
}