Удвойте QString и сохраните в QJsonDocument - PullRequest
0 голосов
/ 07 января 2020

Мне нужно сохранить значения ниже заданных уровней, используя 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. Но мне действительно нужно сохранить число с точкой в ​​виде строки. Есть ли другой способ сохранить эту строку без автоматического создания объекта?

Я использую C ++ в QTCreator.

1 Ответ

0 голосов
/ 07 января 2020

Это должно работать

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

...