一端用Delphi来发送数据,
一端用QT来接收数据,QT自己本身可以显示中文,相关代码具体如下:
QTextCodec::setCodecForLocale(QTextCodec::codecForName("utf8"));
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("utf8"));
QTextCodec::setCodecForTr(QTextCodec::codecForName("utf8"));
-----------------
QByteArray datagram;
while (MediaUdpSocket.hasPendingDatagrams())
{
datagram.resize(MediaUdpSocket.pendingDatagramSize());
MediaUdpSocket.readDatagram(datagram.data(), datagram.size());
}
qDebug("测试abc"); //QT本身显示中文正常
qDebug()<<QObject::trUtf8(datagram.data()); //如果是英文和数字正常,如果是汉字就显示问号,怎么办???