간단한 클라이언트 서버 소켓 프로그램을 작성하고 a | b | c | * 문자열을 보내고 클라이언트가 그것을 수신하지 않습니다. 클라이언트가 다른 컴퓨터에 있습니다.클라이언트 소켓에 문자열이 수신되지 않습니다.
서버 코드.
String format = "a|b|c|*";
ServerSocket ss = new ServerSocket(2222);
System.out.println("Server Started.");
while (true) {
Socket s = ss.accept();
System.out.println("Connection accepted.");
InputStream is = s.getInputStream();
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
PrintStream ps = new PrintStream(s.getOutputStream());
ps.println(format);
ps.flush();
System.out.println("Format sent.");
}
클라이언트 측
try {
Socket s = new Socket("192.168.0.71", 2222);
// step 3: Get I/O streams
InputStream is = s.getInputStream();
InputStreamReader isr= new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
String format = br.readLine();
System.out.println(format);
} catch(Exception ex){
System.out.println(ex.getMessage());
}
그때는 문자열을 받고 동일한 시스템에서 클라이언트를 생성하고, 내가 다른 컴퓨터 클라이언트에이 문자열을 통과 할 때 그것을받지 않습니다
.
어떻게 될까요? 거기에 예외가 있습니까? 그것은 연결하지만 어떤 데이터도 얻지 못합니까? –
@ Peter, 맞습니다. 연결은되지만 데이터가 없습니다. –
같은 상자와 다른 상자에서 호스트와 포트에 텔넷을 사용하면 무엇을 얻게됩니까? 'telnet 192.168.0.71 2222' –