c++에서 안드로이드로 tcp 소켓으로 이미지 파일은 전송하여 주었습니다. 받고 나서 안드로이드에 저장된 파일과 c++에서 보낸 파일의 바이트 코드가 서로 다르네요.


울트라 에디터로 열어본 데이터가 다음과 같습니다.


1. 보낸 데이터(원 본, c++)

e2.png


2. 받은 데이터(안드로이드)
e1.png


아주 미세한 차이가 있습니다. 제 생각엔 엔디안 문제인것 같은데요 코드 중간에 \n이 들어가있는지 전체 파일 크기가 22277byte인데 

소켓에서 데이터를 모두 받으면 20972밖에 되지가 않네요. 20972 위치에 \n에 해당하는 값이 들어가서 그런지 잘 받다가 다 받았다고 판단해서 루프를 탈출하네요.


이 문제가 엔디안 문제가 맞나요? c++에서 보내기전에 엔디안 처리를 한후 보내줘야되는지....


잘 아시는분의 도움을 부탁드립니다.