45 static QJsonObject
stringToJSON(QString dataString,
bool print =
false) {
46 QJsonParseError jsonParseError;
47 QJsonDocument jsonDoc = QJsonDocument::fromJson(dataString.toUtf8(), &jsonParseError);
48 if (jsonDoc.isNull()) {
50 QString jsonErrorData(dataString.mid(jsonParseError.offset, dataString.indexOf(
"\n", jsonParseError.offset) - jsonParseError.offset));
51 int lineNr = dataString.left(jsonParseError.offset).count(
'\n');
53 qWarning().noquote().nospace() <<
"Error creating JSON from string \"" << dataString <<
"\":\n" << jsonParseError.errorString() <<
":\n" << jsonErrorData <<
"\n" <<
"Please check that the input string is a valid JSON string";
56 QString errorLine(dataString.split(
'\n')[lineNr - 1]);
57 qWarning().noquote().nospace() <<
"Error creating JSON from string \"" << dataString <<
"\":\n" << jsonParseError.errorString() <<
":\n" << jsonErrorData <<
"\nOn line " << lineNr <<
":\n" << errorLine;
61 else if (!jsonDoc.isObject()) {
62 qWarning().noquote().nospace() <<
"Error creating JSON from string \"" << dataString <<
"\":\n: JSON document is not an object";
66 QJsonObject data = jsonDoc.object();