我正在使用下面的代码从二进制文件中读取数据。 header
的值为0xB1B1B1B1,但下面的代码给出了输出B1B1B1B1。
quint32 header;
in >> header;
QString myString;
myString.resize(sizeof(header));
myString = QString::number(header,16).toUpper();
qDebug() << myString;
答案 0 :(得分:1)
如果您输出中唯一缺少的是0x
前缀,则可以手动添加:
myString = "0x" + QString::number(header,16).toUpper();
请注意,使用0x
作为前缀是C ++(以及许多其他编程语言)中的语法结构,但与十六进制数本身无关。