![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
hagerds |
|
|||
Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 12.12.2011 Репутация: нет Всего: нет |
Всем добрый день!
Я создаю соединение клиента с сервером. Между ними передаю строки не разрывая соединения. (тоесть чата). Мне надо передать файлы побайтно по сети. отдельно это реализовал, а как с чатом не понимаю. К примеру по нажатию клавиши я попадаю в case 2: и передаю коллекцию файлов, для передачи по сети. Прохожу её итератором. Дальше джидаевским способом создаю поток для передачи байт итому клиенту. Без закрытия потока, клиент не получает последней порции передоваемых байт. По закрытию потока мы не можем передать ещё один файл и тем более строку т.к. поток мы закрыли. ![]() Вопрос! как правильно передать файл / лы. не разрывая соединения с чатом? вот куски кода.
Это сообщение отредактировал(а) hagerds - 20.5.2012, 13:53 |
|||
|
||||
hagerds |
|
|||
Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 12.12.2011 Репутация: нет Всего: нет |
мысль пришла в голову. можно передать файл по другому порту, но при этом придётся создавать на клиенте ServerSocket. а это мне кажется не есть холошо.
Это сообщение отредактировал(а) hagerds - 20.5.2012, 21:41 |
|||
|
||||
hagerds |
|
|||
Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 12.12.2011 Репутация: нет Всего: нет |
Нашол интересный класс DataInputStream но при передаче строки передаётся часть байтов. Что ведёт к краху передачи файлов.
саветы на других форумах нашол говорят надо писать свой протакол. где хоть про это посмотреть? ![]() ![]() ![]() Это сообщение отредактировал(а) hagerds - 20.5.2012, 21:41 |
|||
|
||||
Dummy |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 263 Регистрация: 21.5.2007 Репутация: 1 Всего: 19 |
В вашем изначальном коде вы после out.write() не делаете out.flush(). Измените, и тогда должны все данные приходить без закрытия потока. После первого файла сможете передать второй и т. д.
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java: Работа с сетью | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |