QTCPSocket Stream unvollständig
-
Ich habe den gleichen Verbindungsaufbau wie im QT-Beispiel [1]. Der Client soll auch hier vom Server eine Zeichenfolge lesen. Der Response vom Server übertragt am Anfang die Message-Größe. Ich lese nun solange ein, bis der Socket soviele Daten gelesen hat. Die zentrale Methode ist hier void Client::readFortune().
Anders als im Qt-Beispiel [1] wird jedoch QDataStream nicht gefülltQDataStream in(tcpSocket); in.setVersion(QDataStream::Qt_4_2); ... QString nextFortune; in >> nextFortune; // leerer String
und der Socket hat nicht alle Daten:
QByteArray buffer = tcpSocket->read( blockSize ); // buffer nicht vollständig.
Wo liegt das Problem?