[英]Preserve QbyteArray to Qstring
我想像qDebug()一樣顯示QbyteArray的值。
qDebug()<<byteArray === Displays -> "\x8E\xA9\xF3\xA5"
當我在線上進行轉換時,如何將這個QbyteArray捕獲到QString中,它給了我“ ????
”作為輸出。
我希望QString的內容與QDebug()的輸出相同;
"\x8E\xA9\xF3\xA5"
這樣QString字符串將包含“ \\ x8E \\ xA9 \\ xF3 \\ xA5”
使用構造函數構建一個QDebug對象:
QDebug :: QDebug(QString * string)
構造一個寫入給定字符串的調試流。
例:
#include <QApplication>
#include <QDebug>
#include <QLabel>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QLabel label;
QByteArray ba("\x8E\xA9\xF3\xA5");
QString res;
QDebug db(&res);
db << ba;
label.setText(res);
label.show();
return a.exec();
}
更新:
如果沒有“ \\ x”,請使用toHex():
#include <QApplication>
#include <QLabel>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QLabel label;
QByteArray ba("\x8E\xA9\xF3\xA5");
label.setText(ba.toHex());
label.show();
return a.exec();
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.