QDataStream的尴尬

最近在编写一个网络功能,需要将一个文件内容传递到客户端并将改内容以文件形式保存下来。由于文件内容是个加密文件且采用了二进制形式于是客户端就采用了QDataStream这个对象来保存文件。粗略的测试下来没有什么问题,可是在获取写入的文件是否发现写入的文件读取出来内容不正确。经过一番折腾最终发现是QDataStream这个对象引起的问题。原来是我在打开文件的时候加上了QIODevice::Text 这个标识引起的,发现加了这个标识后写入文件都会把原来的\0转换成两个字符写入,因此写入的文件内容就无端多一个字符处理,这样在反向解码就会出现问题。这问题一定要牢记下次不用再折腾了。

相关推荐
码农小韩2 小时前
基于Linux的C++学习——动态数组容器vector
linux·c语言·开发语言·数据结构·c++·单片机·学习
hui函数3 小时前
如何解决 pip install 编译报错 g++: command not found(缺少 C++ 编译器)问题
开发语言·c++·pip
CSDN_RTKLIB3 小时前
【std::vector】clear介绍
c++·stl
XiaoHu02073 小时前
Linux多线程(详细全解)
linux·运维·服务器·开发语言·c++·git
苏宸啊3 小时前
C++(二)类和对象上篇
开发语言·c++
fqbqrr3 小时前
2601C++,编译时连接两个串指针
c++
嵌入式进阶行者3 小时前
【算法】TLV格式解析实例:华为OD机考双机位A卷 - TLV解析 Ⅱ
数据结构·c++·算法
OC溥哥9993 小时前
Paper MinecraftV3.0重大更新(下界更新)我的世界C++2D版本隆重推出,拷贝即玩!
java·c++·算法
Jayden_Ruan4 小时前
C++蛇形方阵
开发语言·c++·算法
星火开发设计4 小时前
C++ map 全面解析与实战指南
java·数据结构·c++·学习·算法·map·知识