Heim > Datenbank > MySQL-Tutorial > Qt客户端与Erlang服务器通信(2):多个字符串的获取

Qt客户端与Erlang服务器通信(2):多个字符串的获取

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Freigeben: 2016-06-07 15:37:47
Original
1158 Leute haben es durchsucht

当在一条消息里需要发送多个字符串时,这时要提取每条字符串,需要做一些特殊的处理。上文提到,消息头是表示4字节长度的,那么我们可以利用消息头来截取所需的长度。 看代码: void Widget::slot_udpReadyRead(){ QByteArray byteArray1; while(udpSocket-h


    当在一条消息里需要发送多个字符串时,这时要提取每条字符串,需要做一些特殊的处理。上文提到,消息头是表示4字节长度的,那么我们可以利用消息头来截取所需的长度。

看代码:

void Widget::slot_udpReadyRead()
{
    QByteArray byteArray1;
    while(udpSocket->hasPendingDatagrams())
    {
        byteArray1.resize(udpSocket->pendingDatagramSize());
        udpSocket->readDatagram(byteArray1.data(),byteArray1.size());
    }

    //提取服务器回发消息里的信息
    QDataStream in1(&byteArray1,QIODevice::ReadOnly);
    QTextCodec *codec=QTextCodec::codecForName("UTF-16BE");

    //myStr1
    quint32 Len1;
    in1>>Len1;
    qDebug()toUnicode(byteArray1.right(byteArray1.length()-4));
    qDebug()>Len2;
    qDebug()toUnicode(byteArray2.right(byteArray2.length()-4));
    qDebug()

<p><br>
</p>
运行情况如下:
<p><img  src="/inc/test.jsp?url=http%3A%2F%2Fimg.blog.csdn.net%2F20140612055707937%3Fwatermark%2F2%2Ftext%2FaHR0cDovL2Jsb2cuY3Nkbi5uZXQvc3RyOTk5X2Nu%2Ffont%2F5a6L5L2T%2Ffontsize%2F400%2Ffill%2FI0JBQkFCMA%3D%3D%2Fdissolve%2F70%2Fgravity%2FSouthEast&refer=http%3A%2F%2Fblog.csdn.net%2Fstr999_cn%2Farticle%2Fdetails%2F30203381" alt="Qt客户端与Erlang服务器通信(2):多个字符串的获取" ><br>
<br>
</p>


Nach dem Login kopieren
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage