에코 서버를 실행하려고 할 때 소켓에 데이터를 읽거나 쓸 수 없습니다. 예외가 발생하지 않고 콘솔 입력에 대한 응답이 없습니다. 코드에서 올바르지 않은 것은 무엇입니까?소켓의 InputStream에서 데이터를 가져올 수 없습니다.
public class Server {
static ServerSocket server;
public static void main(String[] args) throws IOException {
String hostname = "127.0.0.1";
try{
server = new ServerSocket(8888);
} catch (IOException e) {
System.out.println("Could not listen on port 8888");
System.exit(-1);
}
Socket theSocket = null;
try {
theSocket = new Socket(hostname, 8888);
BufferedReader networkIn = new BufferedReader(new InputStreamReader(theSocket.getInputStream()));
BufferedReader userIn = new BufferedReader(new InputStreamReader(System.in));
PrintWriter out = new PrintWriter(theSocket.getOutputStream(), true);
System.out.println("Connected to echo server");
while (true) {
String theLine = userIn.readLine();
if (theLine.equals("."))
break;
out.println(theLine);
out.flush();
System.out.println("networkIn: "+networkIn.readLine());
}
networkIn.close();
out.close();
System.out.println("out.close();");
} catch (IOException e) {
e.printStackTrace();
}
}
}