Russian Qt Forum
Ноябрь 23, 2024, 05:25 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Надо передать строку по сети другому приложению (не Qt) в строковом формате  (Прочитано 4461 раз)
sibmail
Гость
« : Апрель 01, 2009, 06:37 »

Надо передать строку по сети другому приложению (не Qt), чтобы на другом конце получили строковые данные (не бинарные)
Записан
sibmail
Гость
« Ответ #1 : Апрель 01, 2009, 06:38 »

Надо передать строку по сети другому приложению (не Qt), чтобы на другом конце получили строковые данные (не бинарные)

подскажите с реализацией ))
Записан
Rcus
Гость
« Ответ #2 : Апрель 01, 2009, 07:06 »

Что есть строковые данные и как они могут быть не бинарными (ну передачу почтовыми голубями я не рассматриваю)? Я не спец в сетевых протоколах, но сколько я видел обычно строки передают в utf8, передавая сначала длину строку (2-4 байта)
Записан
sibmail
Гость
« Ответ #3 : Апрель 01, 2009, 12:12 »

передачу я сделал
QByteArray  arrBlock;
arrBlock=lineEdit->text().toUtf8();
m_pTcpSocket->write(arrBlock);

не подскажите с приемом как быть??
Записан
Rcus
Гость
« Ответ #4 : Апрель 01, 2009, 13:18 »

Ненене Улыбающийся TCP/IP обеспечивает абстракцию потока данных. То есть отвечает за то что данные будут доставлены и гарантирует порядок их получения.
Ответственность за интерпритацию потока ложится уже на реализацию протокола уровня приложения, бывает что в одном tcp пакете передаются несколько пакетов уровня приложения, или наоборот.
Обычной практикой является заголовок установленной формы, в котором указан тип пакета и его длина.
В общем мог бы посоветовать почитать каких-нибудь книг по сетевым протоколам, возможно RFC и залить это чтением спеков по долгоживущим протоколам (например интересны мутации протокола ed2k)
Записан
whirlwind
Гость
« Ответ #5 : Апрель 01, 2009, 21:45 »

передачу я сделал
QByteArray  arrBlock;
arrBlock=lineEdit->text().toUtf8();
m_pTcpSocket->write(arrBlock);

не подскажите с приемом как быть??
собственно, также... QString QString::fromUtf8 ( const char * str, int size = -1 )
а const char* можно из того же QByteArray получить, по-моему...
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.053 секунд. Запросов: 21.