Head First Java Chapter 15 512페이지부터 발췌
Socket으로 부터 데이터를 읽으려면, BufferedReader를 사용하면 됩니다.
1. 서버에 Socket 연결을 합니다.
Socket chatSocket = new Socket("127.0.0.1", 5000);
/*
127.0.0.1 은 localhost의 IP주소입니다. 즉, 이 코드가 돌아가고 있는 호스트를 나타내는 IP 주소지요. 클라이언트와 서버를 독립적인 시스템하나에서 테스트하고 있을 때는 이 IP 주소를 사용하면 됩니다.
*/
/*
채팅서버에서 5,000번 포트를 사용하기로 했으므로 이 포트 번호를 사용합니다.
*/
2. Socket의 저수준(연결) 입력 스트림에 연쇄된 InputStreamReader를 만듭니다.
InputStreamReader stream = new InputStreamReader(chatSocket.getInputStream());
/*
InputStreamReader는 저수준 바이트 스트림(Socket에서 오는 것과 같은 스트림)과 고수준 문자 스트림(BufferedReader와 같이 우리가 직접 사용할, 맨 위에 있는 스트림)을 이어주는 '다리'입니다.
*/
/*
소켓에 입력 스트림을 요구하기만 하면 됩니다. 이 스트림은 저수준 연결 스트림이지만 나중에 텍스트와 더 '친한' 것에 연쇄시킬 것입니다.
*/
3.BufferedReader를 만들고 읽습니다.
BufferedReader reader = new BufferedReader(stream);
String message = reader.readLine();
/*
BufferedReader를 InputStreamReader(Socket으로부터 받은 저수준 연결 스트림에 연쇄시켰던 스트림)에 연쇄시킵니다.
*/
데이터를 Socket으로 쓸 때는 PrintWriter를 사용합니다.
'이전것 > JAVA' 카테고리의 다른 글
java 프로그램 실행시간 측정 (0) | 2017.01.20 |
---|---|
JAVA HTML 태그 또는 모든 태그 형식 제거 (0) | 2017.01.16 |
3) 프로그램 만들기 (0) | 2016.12.26 |
2) 클래스와 객체 (0) | 2016.12.26 |
문자열 치환의 모든 것 (0) | 2016.12.22 |