JSON read and write values
-
@another_one
I don't know. suggest you putqDebug()
statements after each line as you change the JSON to see what's going on where. The fact that you use a dialog to get a pathname from the user cannot be relevant.QString strReply3 = (QString)file_json3.readAll();
do not use this. Use a suitableQString
method.wrote on 25 May 2023, 08:25 last edited by@JonB said in JSON read and write values:
Use a suitable QString method.
Sorry I didint undestand, what is why I still do not use what
Could you bring some example?, please -
@JonB said in JSON read and write values:
Use a suitable QString method.
Sorry I didint undestand, what is why I still do not use what
Could you bring some example?, please@another_one You can't use C-style cast to cat a QByteArray to QString.
Use one of the from* methods like https://doc.qt.io/qt-6/qstring.html#fromLatin1-2 depending on the used encoding. -
@another_one You can't use C-style cast to cat a QByteArray to QString.
Use one of the from* methods like https://doc.qt.io/qt-6/qstring.html#fromLatin1-2 depending on the used encoding.wrote on 25 May 2023, 11:06 last edited by@jsulm
Now I undestand, sorry, I need to do readall in QbyteArray as mzimmers already recomended
Thanks to all! -
@jsulm
Now I undestand, sorry, I need to do readall in QbyteArray as mzimmers already recomended
Thanks to all!wrote on 25 May 2023, 12:06 last edited byI did recomended changes but unfortunally it doesn help!
QFile file_json3(QString::fromStdString("monMK.json")); if (!file_json3.open(QFile::ReadOnly)) { qDebug() << "json didnt opened"; } else { QByteArray qba3; QJsonParseError qjpe3; qba3 = file_json3.readAll(); file_json3.close(); QJsonDocument jsonResponse3 = QJsonDocument::fromJson(qba3, &qjpe3); QJsonObject jsonObject3 = jsonResponse3.object(); jsonObject3["FILE_LOAD"] = g_FILE_LOAD; jsonResponse3.setObject(jsonObject3); file_json3.open(QFile::WriteOnly); qba3 = jsonResponse3.toJson(); file_json3.write(qba3); file_json3.close(); qDebug() << qba3; qDebug() << "store finished"; }
-
I did recomended changes but unfortunally it doesn help!
QFile file_json3(QString::fromStdString("monMK.json")); if (!file_json3.open(QFile::ReadOnly)) { qDebug() << "json didnt opened"; } else { QByteArray qba3; QJsonParseError qjpe3; qba3 = file_json3.readAll(); file_json3.close(); QJsonDocument jsonResponse3 = QJsonDocument::fromJson(qba3, &qjpe3); QJsonObject jsonObject3 = jsonResponse3.object(); jsonObject3["FILE_LOAD"] = g_FILE_LOAD; jsonResponse3.setObject(jsonObject3); file_json3.open(QFile::WriteOnly); qba3 = jsonResponse3.toJson(); file_json3.write(qba3); file_json3.close(); qDebug() << qba3; qDebug() << "store finished"; }
@another_one said in JSON read and write values:
QJsonParseError qjpe3; qba3 = file_json3.readAll(); file_json3.close(); QJsonDocument jsonResponse3 = QJsonDocument::fromJson(qba3, &qjpe3);
What about checking what qjpe3 contains ?
-
@another_one said in JSON read and write values:
QJsonParseError qjpe3; qba3 = file_json3.readAll(); file_json3.close(); QJsonDocument jsonResponse3 = QJsonDocument::fromJson(qba3, &qjpe3);
What about checking what qjpe3 contains ?
@SGaist said in JSON read and write values:
Why about checking what qjpe3 contains ?
And on the next line don't ignore
qjpe3
. Doing basically no error checking and the onwdering why it does not work... -
@SGaist said in JSON read and write values:
Why about checking what qjpe3 contains ?
And on the next line don't ignore
qjpe3
. Doing basically no error checking and the onwdering why it does not work...wrote on 29 May 2023, 11:07 last edited byThanks to all!, At last I found an error in on_open_folder_clicked()
-
Thanks to all!, At last I found an error in on_open_folder_clicked()
wrote on 29 May 2023, 11:28 last edited by@another_one And what was that error, given that you showed us the full source code of that function?
-
@another_one And what was that error, given that you showed us the full source code of that function?
wrote on 2 Jun 2023, 10:36 last edited byHello!
I find what reason by elimination method
And on_open_folder_clicked() become the following:void M_m::on_open_folder_clicked() { QFileDialog dialog(this); dialog.setFileMode(QFileDialog::Directory); QString nameFile2 = dialog.getOpenFileName(this, tr("load bin"),"", tr("*.bin")); qDebug() << "file name at first "<< nameFile2; if (nameFile2.isEmpty()) { return; } else { qDebug() << "dirdir2"; ui->lineEdit->setStyleSheet("color: green; background-color: white"); ui->lineEdit->setText(nameFile2); g_FILE_LOAD = nameFile2; qDebug() << QString::number((unsigned int)fls, 16); ui->lineEdit->setStyleSheet("color: green; background-color: white"); ui->lineEdit->setText(nameFile2); qDebug() << "new g_FILE_LOAD" << g_FILE_LOAD; } fs2->setValue(3); }
21/29