Не получается отправить картинку на socket клиент Java android с сервера Python

Есть клиент на Java android socket и сервер на Python socket. С сервера я передаю массив байт на клиент, но после передачи, файл не полный и не открывается. Вот код:

Клиент:

//--подключение к серверу
BufferedReader In = new BufferedReader(new InputStreamReader(socket.getInputStream()));
FileOutputStream fos = openFileOutput("photo.png", MODE_PRIVATE); //создание файла
String in = In.readLine(); //чтение размера картинки
int size = Integer.parseInt(in); //преобразование в int
DataInputStream dIn = new DataInputStream(socket.getInputStream());
byte[] bytes = new byte[5*1024];
int count, total=0;
while ((count = dIn.read(bytes)) > -1) {
    total+=count;
    fos.write(bytes);
    if (total==size) break;
}
fos.close();

Сервер:

#-- создание сервера
f = open('photo.png', 'rb')
b = f.read()
conn.send((str(len(b)) + '\r\n').encode()) #отправка размера картинки
conn.send(b) #отправка байтов
conn.send('\r\n'.encode()) #завершение строки

Может я не так передаю или не так записываю в файл?


Ответы (0 шт):