crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> Получение текста через TCP сокет, Нахождение символа конца строкит ()
fsMark
  опции профиля:
сообщение 2.5.2008, 23:42
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 97
Регистрация: 23.4.2008
Из: г. Киров
Пользователь №: 155

Спасибо сказали: 10 раз(а)




Репутация:   1  


Получаю данные QTcpServer`ом от удаленного telnet клиента, признак конца команды (насколько я понял из немногочисленной документатции) есть ничто иное как признак конца строки и перевод каретки (т.е. "\n\r").
Использую следующий код для получения команды целиком (она записывается в буфер)
    void myFtpServer::slotReadClient() 
        {
        QTcpSocket* pClientSocket = (QTcpSocket*)sender();
        QTextStream in(pClientSocket);  
        QString tmp;    
        tmp = "";
        in >> tmp;
        buffer = buffer + tmp;    
        if (buffer.indexOf("\n\r")!=(-1))
        {
        //здесь обработка команды
        buffer = "";
        };
        
        }

Такой код ничего хорошего не дает ((, возникает вопрос правильно ли я ищу признак конца строки и перевод каретки.. или может я неправ насчет того что передает telnet при нажатии enter`а? Кто сталкивался подскажите пожалуйста.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
fsMark
  опции профиля:
сообщение 3.5.2008, 12:22
Сообщение #2


Студент
*

Группа: Участник
Сообщений: 97
Регистрация: 23.4.2008
Из: г. Киров
Пользователь №: 155

Спасибо сказали: 10 раз(а)




Репутация:   1  


Уверен, все текстовые символы получаю нормально, немогу только определить конец строки. Могет QTextStream их както подругому себе представляет?
Цитата
Вообще-то не "\n\r", а "\r\n".
Другими словами так:

if (buffer.indexOf("\n\r")!=-1)


А у меня так и написанно..)) в смысле "\n\r". Проблема в том что он даже "\n" не находит... а он в любом варианте должен быть.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 18.2.2025, 18:34