将 QbyteArray 保存到 Qstring
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)
Constructs a debug stream that writes to the given 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();
}
我想像 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)
Constructs a debug stream that writes to the given 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();
}