안드로이드 개발 질문/답변
(글 수 45,052)
현재 readline으로 데이터를 수신하고 있습니다.
서버에서 char형태로 int정수를 보내는데 2바이트로 표현되는 숫자입니다.
예를들면 보내는 숫자가 483이고 char배열에 넣게되면 0번째 바이트에는 -29, 1번째 바이트에는 1이 들어갑니다.
그렇게 안드로이드쪽으로 전송하게되면 안드로이드에서는 0번째 바이트에 -3, 1번째 바이트에는 1이 들어있습니다.
1바이트로 표현되는 숫자는 이상이 없으나, 2바이트로 표현되는 숫자만 문제가 생깁니다.
엔디안은 맞춰져 있습니다. 애초에 값이 다르게 오는데.. 왜 그런지.. 문자열도 모두 이상없습니다.
이것도 readline()으로 받게되면 -29에 해당하는 문자만 달랑 표시되어 아래처럼 받은 경우입니다.
조그마한 단서라도 좋으니 조언 부탁드립니다. 감사합니다.
byte[] Recv = new byte[4];
Recv[0] = (byte)networkReader.read();
Recv[1] = (byte)networkReader.read();
Recv[2] = (byte)networkReader.read();
Recv[3] = (byte)networkReader.read();