728x90
지난주에 이어 이번주는 client 측 소스를 구현해 보겠습니다.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.net.InetAddress;
import java.net.InetSocketAddress;
import java.net.Socket;
import java.util.Scanner;
public class TCPClient {
public static void main(String[] args) {
// 클라이언트 소켓 생성
Socket socket = new Socket();
Scanner sc = new Scanner(System.in);
InputStream is = null;
InputStreamReader isr = null;
BufferedReader br = null;
OutputStream os = null;
OutputStreamWriter osw = null;
PrintWriter pw = null;
// new InetSocketAddress(InetAddress.getLocalHost() 6077
try {
socket.connect(new InetSocketAddress(InetAddress.getLocalHost(), 6077));
System.out.println("[client] connected with server");
while (true) {
is = socket.getInputStream();
isr = new InputStreamReader(is, "UTF-8");
br = new BufferedReader(isr);
os = socket.getOutputStream();
osw = new OutputStreamWriter(os, "UTF-8");
pw = new PrintWriter(osw, true);
// 읽는거
System.out.print(">>");
String data = sc.nextLine();
if ("exit".equals(data))
break;
pw.println(data);
data = br.readLine();
System.out.println("<< " + data);
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
try {
if (socket != null && !socket.isClosed()) {
socket.close();
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
sc.close();
}
}
}
지난주에 설정해준 포트와 localhost 주소를 입력해 이를 통해 서버 코드와 채팅이 이루어 질 수 있습니다.
https://stickode.com/mainlogin.html
'안드로이드 자바' 카테고리의 다른 글
[Java][Android] Toast message 커스텀 하기 (0) | 2022.04.15 |
---|---|
[Java][Android] 별점 만들기 (CustomView 만들기) (0) | 2022.04.05 |
[Java][Android] 안드로이드 막대 그래프 만들기 (0) | 2022.03.31 |
[Java][Android] 안드로이드 로그 (Log) 와 종류 알아보기 (0) | 2022.03.28 |
[Java][Android] 안드로이드 TextView 클릭시 색깔 변경 (0) | 2022.03.26 |