![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
Rastorev |
![]()
Сообщение
#1
|
Новичок Группа: Новичок Сообщений: 6 Регистрация: 27.2.2009 Пользователь №: 579 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Добрый день!
Программа клиент TCP должна передавать информацию о файле и сам файл на сервер TCP и отображать ответ и текущее состояние сервера Сделано стандартно по примеру QT - обмен строковой информации между клиентом и сервером по TCP/IP происходит через открытый сокет, теперь я пытаюсь разбить файл на блоки и передаю в сокетный поток, а на сервере принимая каждый блок сохраняю в файл, но в файл выводятся иероглифы вместо нужной информации. Клиента код.
Нужно сделать так чтобы сервер создавал файл и содержимое полученное от клиента получалось нормальным. Подскажите пожалуйста, в чем ошибка? может решить эту проблему по другому? Может быть есть какие-нибудь нюансы которые я не учел? Заранее спасибо!!!
Причина редактирования: используйте тэг code
|
|
|
![]() |
kuzulis |
![]()
Сообщение
#2
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 393 Регистрация: 29.6.2009 Пользователь №: 862 Спасибо сказали: 36 раз(а) Репутация: ![]() ![]() ![]() |
Цитата Тогда уж int blockSize = 0; .... .... if (tcpSocket->bytesAvailable() < sizeof(int)) return; in >> blockSize; а тут вы ограничиваете 4-мя байтами, т.к. sizeof(int) = 4 ![]() |
|
|
![]() ![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 14.7.2025, 23:12 |