qt服務器要給客戶端發送資料,我要發的是商品的資訊,包括文本跟圖片,這兩種不同的資料能一起發送嗎,如果可以的話,客戶端怎么在slotReadyRead中接收這兩種不同的資料
uj5u.com熱心網友回復:
可以的客戶端發送,你在一個函式中事先把圖片換成流,然后以QString型別回傳,然后把它跟其他文本按照你的協議發送就行,這是將圖片轉換成流,然后回傳QString型別;
QImage image(fileName);
QBuffer buffer;
buffer.open(QIODevice::ReadWrite);
image.save(&buffer, "jpg");
QByteArray array;
array.append(buffer.data().toBase64());
QString string(array);
qDebug() << string;
return string;
服務器接收,在接受圖片的時候用這個函式
QString filename = "1.jpg";
QString pathname = "D:/management_system/item/Server/qrc/checkimage/" + filename;
QByteArray array;
array.append(string);
QImage image;
image.loadFromData(array.fromBase64(array));
image.save(pathname);//將圖片保存到本地
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/65548.html
標籤:網絡通信
