qt 序列化和反序列化

复制代码
     序列化:
     QByteArray buffer;
复制代码
    QBuffer bufferDevice(&buffer);
复制代码
    bufferDevice.open(QIODevice::WriteOnly);
复制代码
复制代码
    QDataStream out(&bufferDevice);
复制代码
    out.setVersion(QDataStream::Qt_5_13);

反序列化:

复制代码
 void deserialize(const QByteArray &buffer) {
复制代码
        QBuffer bufferDevice(const_cast<QByteArray*>(&buffer));
复制代码
        bufferDevice.open(QIODevice::ReadOnly);
复制代码
复制代码
        QDataStream in(&bufferDevice);
复制代码
        in.setVersion(QDataStream::Qt_5_13);
复制代码
复制代码
        in >>frameHeader >> packetSeq >> dataLength >> batteryLevel >> channelCount
复制代码
           >> pitchAngle >> rollAngle >> yawAngle >> ecg >> spo2
复制代码
           >> reserved1 >> reserved2 >> reserved3 >> reserved4;
复制代码
复制代码
        dataBlock.resize(dataLength);
复制代码
        in.readRawData(dataBlock.data(), dataLength);
相关推荐
江公望8 小时前
Qt qmlplugindump浅谈
开发语言·qt·qml
彡皮8 小时前
qt实用学习案例:数据库设计+图表显示+model-view模式+样式表定制
数据库·qt·学习
曦樂~8 小时前
【Qt】文件操作/事件--mainwindow做编辑器
开发语言·qt
Larry_Yanan9 小时前
QML学习笔记(四十六)QML与C++交互:Q_PROPERTY宏映射
c++·笔记·qt·学习·ui·交互
江公望11 小时前
Qt enum ApplicationAttribute枚举值浅解
linux·qt
友友马11 小时前
『 QT 』信号-槽 补充: Qt信号槽断开连接与Lambda槽技巧
开发语言·数据库·qt
Source.Liu11 小时前
【CMakeLists.txt】 Qt 自动化构建配置详解
qt·自动化·librecad
Source.Liu11 小时前
【CMakeLists.txt】CMake 编译定义带值参数详解
c++·qt·librecad
曦樂~12 小时前
【Qt】TCP连接--客户端和服务器
服务器·网络·c++·qt·tcp/ip
枫叶丹413 小时前
【Qt开发】多元素类控件(三)-> QTreeWidget
开发语言·数据库·c++·qt