| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java: Работа с сетью > Зипованный файл битым прилетает.. |
| Автор: Proger10 22.3.2009, 01:59 | ||||||
| С сервера кидаю бинарный файл на клиент. Всё через сокеты. Файл предварительно гзипую. Серверный код:
приём у клиента:
вот чёрт побери.. один байт решает. 26845 - это размер файла в байтах. Не пойму, в чём может быть дело?? Визуально смотрю - всё почти тоже самое. Только в одном файле два символа - вопросы, а в битом файле test.png почему-то эти символы в виде вопроса в ромбике Не подскажите ли в чём моя ошибка?? |
| Автор: Proger10 22.3.2009, 02:21 | ||||
| Может потоки (/сокеты) как-то подготовить особо надо, чтобы передавать? Всё же 1 байт разницы это в чём-то таком дело.. либо типы неправильные использую, либо ещё какая-то несовместимость.. Либо действительно у меня в программе ошибка. Но вряд ли, всё-таки файл приходит почти такой же.. тока битый Причём меньше именно полученный файл. Вот больше объёмы:
Видите, терь 3 байта сэкономили..
Господа гуры, предположите хоть что-нибудь! |
| Автор: Proger10 22.3.2009, 02:47 | ||
Заменил у клиента вот на такое:
вместо sChunk поставил еденицу - работает абсолютно аналогично. Опять 1 байт теряется. То, что он аналогично работает, это нормально? |
| Автор: qwertovsky 22.3.2009, 02:48 |
| Насколько я сталкивался, в архивы получалось писать только блоками по 8Киб. Как ты так странно с файлом двоичным - построчно, да еще и перенос строки сам добавляешь? |
| Автор: Proger10 22.3.2009, 02:58 | ||||
Я чё-то и сам не подумал!! Дал я маху.. Да и Ридеры/Райтеры не работают с бинарными данными. Проблема решена! На всякий случай, привожу работающий код сервера - пользуйтесь кому надо!
|