서버는 C# 비동기 서버구요
클라이언트는 안드로이드[자바]에요
public static byte[] toByteArray (Object obj)
{
byte[] bytes = null;
ByteArrayOutputStream bos = new ByteArrayOutputStream();
try {
ObjectOutputStream oos = new ObjectOutputStream(bos);
oos.writeObject(obj);
oos.flush();
oos.close();
bos.close();
bytes = bos.toByteArray ();
}
catch (IOException ex) {
ex.printStackTrace();
}
return bytes;
}
위 코드를 사용하여
@SuppressWarnings("serial")
public class TEMP_2 implements Serializable{
public byte Header1=1;
}
TEMP_2라는 객체를 직렬화시켯습니다
그리고 C#서버로전달했는데요
C#서버에서캡쳐된 패킷값을보면
byte[0] = 172
byte[1] =237
byte[2] =0
byte[3] =5
byte[4] =115
byte[5] =114
byte[6] =0
byte[7] =28
byte[8] =99
byte[9] =111
byte[10] =109
byte[11]=49
byte[12] =101
byte[13] =120
byte[14] =97
,....하다가 [59]번째 배열에 자바에서 보낸 Header1 값이 있습니다.
그런데정말 햇갈리고 어이없는게
59번째 전에있는 데이터들은 무었인가요
TEMP_2 클래스에 변수가 추가 되면
진짜 값이 있기전까지의 배열이 더길어지더라구요
그니까 변수 1개일땐 59번째배열부터 값이있고
변수2개일땐 63번쨰부터 값이있더랍니다..
저는 그냥 변수에대한 배열값만오면좋겟는데..정말아리송하네요