다음은 코드입니다.첫 번째 네트워킹 프로그램에 대한 도움말
public class testClient {
public static void main(String[] args) {
testClient abc = new testClient();
abc.go();
}
public void go() {
try {
Socket s = new Socket("127.0.0.1", 5000);
InputStreamReader sr = new InputStreamReader(s.getInputStream());
BufferedReader reader = new BufferedReader(sr);
String x = reader.readLine();
System.out.println(x);
reader.close();
} catch(IOException ex) {
ex.printStackTrace();
}
}
}
public class testServer {
public static void main(String[] args) {
testServer server = new testServer();
server.go();
}
public void go() {
try {
ServerSocket s = new ServerSocket(5000);
while(true) {
Socket sock = s.accept();
PrintWriter writer = new PrintWriter(sock.getOutputStream());
String toReturn = "No cake for you.";
writer.println(toReturn);
}
} catch(IOException ex) {
ex.printStackTrace();
}
}
}
java.io.*
및 java.net.*
는 두 클래스에서 가져옵니다.
이제 다른 터미널을 사용하여 실행하려고하면 아무 일도 일어나지 않습니다. 내가 도대체 뭘 잘못하고있는 겁니까?
화면 : http://i29.tinypic.com/250qlmt.jpg
텔넷으로 서버를 사용할 수 있습니까? 'telnet localhost 5000'이 알려줄 것입니다. 그런 다음 한 번에 절반 만 디버깅하면됩니다. –
(양쪽 모두의 문자 인코딩이 무엇이든 상관 없지만, UTF-8 같은 인코딩을 명시 적으로 지정하는 것이 훨씬 더 효과적이며,'PrintWriter'도 예외를 처리하므로 다른 'Writer'). –