正如您从标题中所了解的,我在将QByteArray
转换为整数时遇到了问题。
QByteArray buffer = server->read(8192);
QByteArray q_size = buffer.mid(0, 2);
int size = q_size.toInt();
然而,size
的值为0。 buffer
没有接收到任何 ASCII 字符,我认为如果不是 ASCII 字符,toInt()
函数将无法正常工作。 正确的int size
应该是37(0x25),但就像我所说的那样,它现在的值是0。
q_size
的值为0x2500
(或者采用另一种字节序 - 0x0025
)。问题出在哪里? 我非常确定
q_size
保存了我需要的数据。
ds.setByteOrder(QDataStream::LittleEndian)
。 - CraftedCart