JTA QT сервер / клиент передачи DTA - PullRequest
2 голосов
/ 03 февраля 2012

Я создал клиента (созданного JAVA) и сервер (посредством qt / c ++), но у меня проблема с передачей данных (что-то не так с форматом, я думаю).

Код на стороне сервера:

void Pirate::DateArrived()
{
QTcpSocket *socket = qobject_cast<QTcpSocket *>(sender());  
QDataStream in (socket);
qDebug()<< socket->bytesAvailable();// here it give me the number of chars i sent in this ex:3
QString cmd ;
in >> cmd;
qDebug()<< cmd.size(); // here it always stay 0
qDebug() << cmd; // always ""

}
public void SendData(String data) throws IOException
    {
        OutputStream theOutput = socket.getOutputStream();
        OutputStreamWriter out = new OutputStreamWriter(theOutput);
        out.write("abc");
        out.flush();
    }

1 Ответ

0 голосов
/ 03 февраля 2012

Согласно документам , при десериализации QString ожидается, что данные будут состоять из длины строки в байтах (quint32), за которой следуют данные в UTF-16.

...