передача файла по TCP |
Здравствуйте, гость ( Вход | Регистрация )
передача файла по TCP |
Rastorev |
10.3.2009, 22:00
Сообщение
#1
|
Новичок Группа: Новичок Сообщений: 6 Регистрация: 27.2.2009 Пользователь №: 579 Спасибо сказали: 0 раз(а) Репутация: 0 |
Добрый день!
Программа клиент TCP должна передавать информацию о файле и сам файл на сервер TCP и отображать ответ и текущее состояние сервера Сделано стандартно по примеру QT - обмен строковой информации между клиентом и сервером по TCP/IP происходит через открытый сокет, теперь я пытаюсь разбить файл на блоки и передаю в сокетный поток, а на сервере принимая каждый блок сохраняю в файл, но в файл выводятся иероглифы вместо нужной информации. Клиента код.
Нужно сделать так чтобы сервер создавал файл и содержимое полученное от клиента получалось нормальным. Подскажите пожалуйста, в чем ошибка? может решить эту проблему по другому? Может быть есть какие-нибудь нюансы которые я не учел? Заранее спасибо!!!
Причина редактирования: используйте тэг code
|
|
|
LE0N |
18.3.2009, 10:31
Сообщение
#2
|
Студент Группа: Участник Сообщений: 97 Регистрация: 10.3.2009 Из: Беларусь Пользователь №: 604 Спасибо сказали: 0 раз(а) Репутация: 0 |
Цитата Я понимаю что это целый протокол, но это не велосипед изобретать!!!в Delphi это всего лишь одна процедура... о_О. Чего ж вы на делфи эту прогу не пишете? )))) Попривыкали, блин, "программировать" компонентами.... Цитата
Уххх, как же душа возрадовалась, когда чистый СИ увидел ) Цитата Я уже целые две недели мудохаюсь, не могу передать нормального размера файл, честное слово Так, может быть, вы расскажете что происходит, когда вы пытаетесь передать файл больше 60кб ? И это...Мне вот просто интересно...А когда вы долбались 2 недели, проверить во время получения данных на ошибки, которые возратит QDataStream тоже ни как? И, последний вопрос, Цитата quint64 tofile = in.readRawData(block,sizeof(block)); Вы знаете, что произойдёт, если в tofile попадёт -1 ? Указывающая на то, что при получении произошла ошибка. |
|
|
Rastorev |
30.3.2009, 23:22
Сообщение
#3
|
Новичок Группа: Новичок Сообщений: 6 Регистрация: 27.2.2009 Пользователь №: 579 Спасибо сказали: 0 раз(а) Репутация: 0 |
Цитата Вы знаете, что произойдёт, если в tofile попадёт -1 ? Указывающая на то, что при получении произошла ошибка. Вы все правильно описали что должно произойти. Вся загвостка оказалась куда более простая чем я думал!!С принимающей стороны надо было ожидать пока все пришедшие bytesavalible() данные будут готовы для чтения |
|
|
Текстовая версия | Сейчас: 18.1.2025, 9:43 |