【问题标题】:Double to QString and save in QJsonDocument加倍到 QString 并保存在 QJsonDocument
【发布时间】:2020-04-24 22:45:55
【问题描述】:

我需要保存低于预设水平的值,使用QJsonDocument。 我有以下代码示例:

(...) 
gameLevels= {3.67, 7.43, 9.76};
while(gameLevels[i] <= x) 
{     
   for(...)
   {
    //do something and calculate auxPoints.
   }
   QString sGL = QString::number(gameLevels[i]);
   QString below = "below";
   QString points = "pts";
   instantPowerPoints.insert(below + sGL+ points , auxPoints);
   i++;
   (...)
}        
emit saveData(QJsonDocument(instantPowerPoints));'

它应该保存如下内容:

"below3.67pts":2
"below7.43pts":6
"below9.76pts":10

但相反是保存:

"below3":Object
   "67pts":2
"below7":Object
   "43pts":6
"below9":Object
   "76pts":10

我得到的问题是如何保存双精度数组gameLevels。但我真的需要将带点的数字保存为字符串。有没有另一种方法可以在不自动创建对象的情况下保存这样的字符串?

我在 QTCreator 中使用 C++。

【问题讨论】:

  • instantPowerPoints是什么对象?连接到saveData 的插槽会发生什么?

标签: c++ qt qstring qjson


【解决方案1】:

这应该是工作

instantPowerPoints.insert(QString("%1 %2 %3").arg(below).arg(sGL).arg(points), auxPoints);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-22
    • 1970-01-01
    • 1970-01-01
    • 2021-01-08
    • 2016-11-27
    • 1970-01-01
    相关资源
    最近更新 更多