int main()
{
QByteArray arr;
QDataStream stream(&arr, QIODevice::ReadWrite);
for (int i = 1; i < 10; ++i) {
qint8 val = i;
stream << val;
}
//读写位置移到流的开头
stream.device()->seek(0);
qint8 val2 = 0;
stream >> val2;
qint8 val3 = 0;
stream >> val3;
QByteArray arr2;
int length = static_cast<int>(stream.device()->bytesAvailable()); //获取数据流中剩余数据长度
arr2.resize(length);
qDebug() << Q_FUNC_INFO << "arr2.size: " << arr2.size();
stream.readRawData(arr2.data(), length); // 使用readRawData方法读取剩余数据
qDebug() << Q_FUNC_INFO << arr;
qDebug() << Q_FUNC_INFO << "val2: " << val2;
qDebug() << Q_FUNC_INFO << "val3: " << val3;
qDebug() << Q_FUNC_INFO << "bytesAvailable length:" << length;
qDebug() << Q_FUNC_INFO << arr2;
return 0;
}
08-10
3395
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交