ZeroMQ+QT 字符串收发

结合 Zeromq API函数 与 Qt 字符串QString QByteArray 实现字串收发:

发送端:

1 zmq_msg_t msg;
2 QString strT = “ABC汉字123”;
3 QByteArray array = strT.toLocal8Bit();//默认utf-8编码
4 zmq_msg_init_data(&msg,array.data(),array.size(),NULL,NULL);
5 int rc = zmq_msg_send(&msg,pSock, 0);  //pSock由zmq_socket生成
6 //....
7 zmq_msg_close(&msg);

接收端:

 zmq_msg_t msg;
 zmq_msg_init(&msg);
 int rc = zmq_msg_recv(&msg,pSock,0);
 if(-1!=rc)
{
    char *ptr= (char*)(zmq_msg_data(&msg));
    QByteArray array = QByteArray::fromRawData(ptr,rc);
    QString strT = QString::fromLocal8Bit(array);
}

实现:strT= “ABC汉字123” 打包发送与接收解析。

posted on 2018-04-17 18:08  雁北  阅读(1590)  评论(0编辑  收藏  举报

导航