当前位置:   article > 正文

QByteArry以二进制写入多n个字节_qt将qbytearray写入文件

qt将qbytearray写入文件

问题描述

使用qt串口接收数据,将数据保存成二进制数数据数据中会有多出的字节。但是将数据存储为文本模式(ascii字符·txt·)时没有问题,数据量正确。

原因

是因为QByteArry在写入文件时,会默认加上个长度字节,在原始数据中。

解决方案

使用QDataStream进行写入

QFile qfile_save_adc_bin("./out/file.bin"); 
QDataStream out_adc(&qfile_save_adc_bin);

# 串口接收数据
QByteArray data_serial = serialRead->readAll();
# 写入
out_adc.writeRawData(data_serial,data_serial.size());
qfile_save_adc_bin.close(); // 关闭文件
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/736725
推荐阅读
相关标签
  

闽ICP备14008679号