gpt4 book ai didi

c++ - 如何将 QVector 转换为 QByteArray 并进行压缩

转载 作者:太空宇宙 更新时间:2023-11-03 17:26:15 26 4
gpt4 key购买 nike

我想将 QVector 转换为 QByteArray。我正在使用这样的东西:

QByteArray bytesArray
QDataStream out(&bytesArray ,QIODevice::WriteOnly);
out << someVector;
bytesArray = qCompress(bytesArray, 5);

阅读它:

bytesArray = qUncompress(bytesArray)
QDataStream in(bytesArray);
QVector<qreal> otherVector;
in >> otherVector;

但是我有一个问题。我保存了 1.23124121242135 这样的数字,阅读后我得到了 1.23124。我如何存储和读取完整数字?

最佳答案

如果出于任何原因它不允许存储值(例如 0.0 +10 或更多小数,你可以做一个解决方法1 转换双 t 字符串并将 t_size 转换为 int2 根据所述值的长度创建一个 long 或另一个 int 并将其与原始大小相乘,并用新的 int 值保存大小。

如果原始是 1.876649018 大小是 10 所以 乘数是 10^10

3 取回它只是将新的 long int 值除以大小的问题

这是现在唯一想到的...

关于c++ - 如何将 QVector<double> 转换为 QByteArray 并进行压缩,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59722157/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com