package com.example.repeater; import android.content.Context; import android.util.Log; import java.io.BufferedReader; import java.io.DataOutputStream; import java.io.InputStream; import java.io.InputStreamReader; import java.io.ObjectInputStream; import java.io.OutputStream; import java.io.PrintWriter; import java.net.Socket; public class receive implements Runnable{ private InputStreamReader in = null; private BufferedReader buffRead = null; private StringBuilder myCompleteMessage = null; private int numberOfBytesRead = 0; private char buff[] = new char[1024]; private Socket m_socket = null; private Context mContext = null; public receive(Socket socket, Context context) { //생성자를 통하여 소켓을 받아온다 try { m_socket = socket; //서버에 접속된 소켓 파일 디스크립터 저장 in = new InputStreamReader(m_socket.getInputStream()); //전송 객체 초기화 buffRead = new BufferedReader(in); Log.d("receive.class / 데이터 수신 객체 초기화", "성공"); } catch(Exception e) { Log.e("receive.class / 데이터 수신 객체 초기화", "실패"); } } @Override public void run() { // TODO Auto-generated method stub try { while(true) { myCompleteMessage = new StringBuilder(); //StringBuilder 객체 초기화 buffRead = new BufferedReader(new InputStreamReader(m_socket.getInputStream())); numberOfBytesRead = buffRead.read(buff, 0, buff.length);//char 배열 buff에 받아들이고 myCompleteMessage.append(buff, 0, numberOfBytesRead); //buff의 데이터를 StringBuilder객체로 이동 Log.d("receive.class / 데이터 수신", "성공 : " + myCompleteMessage.toString() +"byte : " +numberOfBytesRead);//toString메소드를 통해 /* myCompleteMessage = new StringBuilder(); //StringBuilder 객체 초기화 Log.d("receive1.class / 데이터 수신", "성공 : " + myCompleteMessage.toString());//toString메소드를 통해 numberOfBytesRead = buffRead.read(buff, 0, buff.length);//char 배열 buff에 받아들이고 Log.d("receive2.class / 데이터 수신", "성공 : " + myCompleteMessage.toString());//toString메소드를 통해 //받아들인 byte수를 반환 myCompleteMessage.append(buff, 2, numberOfBytesRead-2); //buff의 데이터를 StringBuilder객체로 이동 Log.d("receive.class / 데이터 수신", "성공 : " + myCompleteMessage.toString());//toString메소드를 통해 //String으로 변환*/ } } catch(Exception e) { Log.e("receive.class / 데이터 수신", "실패" + numberOfBytesRead); } } }