How to exploit a json file in QT ?
-
wrote on 19 Jan 2022, 09:26 last edited by feedain
Good morning everyone,
I have a project that is to communicate in mqtt with some arduino's(that's ok) but i need to exploit the data (such as the port of arduino or the state : 0 or 1) in JSON format, so i created a json file in my mainwindow.cpp ://JSON QJsonObject PortObject; PortObject.insert("Port", QJsonValue::fromVariant("p")); QJsonObject StateObject; StateObject.insert("Etat", "e"); QJsonDocument doc(PortObject); qDebug() << doc.toJson();
The first QJsonObject is for which port i want to change his state et the second is to change the state.
I want to know ```
if fromVariant("p"));StateObject.insert("Etat", "e");
is good as :
with p for the port number and e the state : 0 or 1 And likely to exploit this json file on output application to change a state of a port (for instance). Thanks everyone.
-
Good morning everyone,
I have a project that is to communicate in mqtt with some arduino's(that's ok) but i need to exploit the data (such as the port of arduino or the state : 0 or 1) in JSON format, so i created a json file in my mainwindow.cpp ://JSON QJsonObject PortObject; PortObject.insert("Port", QJsonValue::fromVariant("p")); QJsonObject StateObject; StateObject.insert("Etat", "e"); QJsonDocument doc(PortObject); qDebug() << doc.toJson();
The first QJsonObject is for which port i want to change his state et the second is to change the state.
I want to know ```
if fromVariant("p"));StateObject.insert("Etat", "e");
is good as :
with p for the port number and e the state : 0 or 1 And likely to exploit this json file on output application to change a state of a port (for instance). Thanks everyone.
@feedain said in How to exploit a json file in QT ?:
PortObject.insert("Port", QJsonValue::fromVariant("p"));
What is this supposed to do?
Port is a number, right? Not a string. Why not:PortObject.insert("Port", QJsonValue(p));
?
-
@feedain said in How to exploit a json file in QT ?:
PortObject.insert("Port", QJsonValue::fromVariant("p"));
What is this supposed to do?
Port is a number, right? Not a string. Why not:PortObject.insert("Port", QJsonValue(p));
?
wrote on 19 Jan 2022, 09:45 last edited by JonB -
@JonB said in How to exploit a json file in QT ?:
QJsonValue(p).toInt()?
Why?
insert() expects a QJsonValue. -
@JonB said in How to exploit a json file in QT ?:
QJsonValue(p).toInt()?
Why?
insert() expects a QJsonValue.wrote on 19 Jan 2022, 09:50 last edited by JonB@jsulm
I just read yourPort is a number, right? Not a string
If it's supposed to be a number (integer) for a port number i just like to get to converted when i get it from JSON. But not to worry, i think I mis-read what is going on here. I thought it was parsing JSON input, I thing you're talking about setting a JSON value, my bad.
-
Good morning everyone,
I have a project that is to communicate in mqtt with some arduino's(that's ok) but i need to exploit the data (such as the port of arduino or the state : 0 or 1) in JSON format, so i created a json file in my mainwindow.cpp ://JSON QJsonObject PortObject; PortObject.insert("Port", QJsonValue::fromVariant("p")); QJsonObject StateObject; StateObject.insert("Etat", "e"); QJsonDocument doc(PortObject); qDebug() << doc.toJson();
The first QJsonObject is for which port i want to change his state et the second is to change the state.
I want to know ```
if fromVariant("p"));StateObject.insert("Etat", "e");
is good as :
with p for the port number and e the state : 0 or 1 And likely to exploit this json file on output application to change a state of a port (for instance). Thanks everyone.
wrote on 19 Jan 2022, 10:06 last edited by@feedain said in How to exploit a json file in QT ?:
Good morning everyone,
I have a project that is to communicate in mqtt with some arduino's(that's ok) but i need to exploit the data (such as the port of arduino or the state : 0 or 1) in JSON format, so i created a json file in my mainwindow.cpp ://JSON QJsonObject PortObject; PortObject.insert("Port", QJsonValue::fromVariant("p")); QJsonObject StateObject; StateObject.insert("Etat", "e"); QJsonDocument doc(PortObject); qDebug() << doc.toJson();
The first QJsonObject is for which port i want to change his state et the second is to change the state.
I want to know> if fromVariant("p"));
StateObject.insert("Etat", "e");
is good as : with p for the port number and e the state : 0 or 1 And likely to exploit this json file on output application to change a state of a port (for instance). Thanks everyone.
-
@feedain said in How to exploit a json file in QT ?:
Good morning everyone,
I have a project that is to communicate in mqtt with some arduino's(that's ok) but i need to exploit the data (such as the port of arduino or the state : 0 or 1) in JSON format, so i created a json file in my mainwindow.cpp ://JSON QJsonObject PortObject; PortObject.insert("Port", QJsonValue::fromVariant("p")); QJsonObject StateObject; StateObject.insert("Etat", "e"); QJsonDocument doc(PortObject); qDebug() << doc.toJson();
The first QJsonObject is for which port i want to change his state et the second is to change the state.
I want to know> if fromVariant("p"));
StateObject.insert("Etat", "e");
is good as : with p for the port number and e the state : 0 or 1 And likely to exploit this json file on output application to change a state of a port (for instance). Thanks everyone.
@feedain
? -
wrote on 19 Jan 2022, 10:21 last edited by
@jsulm said in How to exploit a json file in QT ?:
@feedain
?yes i modify my error but i want to know how can i exploit this data, for instance if i want to set up : the port 3 to state 1 ?
-
@jsulm said in How to exploit a json file in QT ?:
@feedain
?yes i modify my error but i want to know how can i exploit this data, for instance if i want to set up : the port 3 to state 1 ?
@feedain Please explain better what you want to achieve.
Can you please post JSON document you want to create? So thatb we can actually understand what you are asking. -
@feedain Please explain better what you want to achieve.
Can you please post JSON document you want to create? So thatb we can actually understand what you are asking.wrote on 19 Jan 2022, 10:36 last edited by@jsulm said in How to exploit a json file in QT ?:
@feedain Please explain better what you want to achieve.
Can you please post JSON document you want to create? So thatb we can actually understand what you are asking.Okay so, i have some numbers of port on an arduino to use by state : 0 or 1,
Example :[ { "Port": n, // n is port starts 1 to 55 "State": e, //e is 0 or 1 }, ]
It's an example but i want to create a JSON like I show you and after that to change easily the port and the state of port
I expect i explain it better... -
Ignoring the array around the object:
QJsonObject obj; obj["Port"] = p; obj["State"] = int(state);
-
@jsulm said in How to exploit a json file in QT ?:
@feedain Please explain better what you want to achieve.
Can you please post JSON document you want to create? So thatb we can actually understand what you are asking.Okay so, i have some numbers of port on an arduino to use by state : 0 or 1,
Example :[ { "Port": n, // n is port starts 1 to 55 "State": e, //e is 0 or 1 }, ]
It's an example but i want to create a JSON like I show you and after that to change easily the port and the state of port
I expect i explain it better...QJsonObject object; pbject.insert("Port", QJsonValue(p)); object.insert("Etat", QJsonValue(e)); QJsonArray array; array.append(object); QJsonDocument doc(array); qDebug() << doc.toJson();
You should really take time to read documentation and take a look at examples like: https://doc.qt.io/qt-5/qtcore-serialization-savegame-example.html
-
Ignoring the array around the object:
QJsonObject obj; obj["Port"] = p; obj["State"] = int(state);
wrote on 19 Jan 2022, 10:48 last edited by@Christian-Ehrlicher said in How to exploit a json file in QT ?:
Ignoring the array around the object:
QJsonObject obj; obj["Port"] = p; obj["State"] = int(state);
obj["Port"] = p; mean you create an array Port and a other State ?
-
@Christian-Ehrlicher said in How to exploit a json file in QT ?:
Ignoring the array around the object:
QJsonObject obj; obj["Port"] = p; obj["State"] = int(state);
obj["Port"] = p; mean you create an array Port and a other State ?
@feedain said in How to exploit a json file in QT ?:
obj["Port"] = p; mean you create an array Port and a other State ?
?
-
QJsonObject object; pbject.insert("Port", QJsonValue(p)); object.insert("Etat", QJsonValue(e)); QJsonArray array; array.append(object); QJsonDocument doc(array); qDebug() << doc.toJson();
You should really take time to read documentation and take a look at examples like: https://doc.qt.io/qt-5/qtcore-serialization-savegame-example.html
wrote on 19 Jan 2022, 10:58 last edited by@jsulm said in How to exploit a json file in QT ?:
QJsonObject object; pbject.insert("Port", QJsonValue(p)); object.insert("Etat", QJsonValue(e)); QJsonArray array; array.append(object); QJsonDocument doc(array); qDebug() << doc.toJson();
You should really take time to read documentation and take a look at examples like: https://doc.qt.io/qt-5/qtcore-serialization-savegame-example.html
I look this example but there is some thing that I doesn't understand
-
@jsulm said in How to exploit a json file in QT ?:
QJsonObject object; pbject.insert("Port", QJsonValue(p)); object.insert("Etat", QJsonValue(e)); QJsonArray array; array.append(object); QJsonDocument doc(array); qDebug() << doc.toJson();
You should really take time to read documentation and take a look at examples like: https://doc.qt.io/qt-5/qtcore-serialization-savegame-example.html
I look this example but there is some thing that I doesn't understand
@feedain said in How to exploit a json file in QT ?:
is some thing that I doesn't understand
And what exactly is the problem? How should we know it when you don't tell us what you don't understand?
-
@feedain said in How to exploit a json file in QT ?:
is some thing that I doesn't understand
And what exactly is the problem? How should we know it when you don't tell us what you don't understand?
wrote on 19 Jan 2022, 14:00 last edited byThis post is deleted! -
@feedain said in How to exploit a json file in QT ?:
is some thing that I doesn't understand
And what exactly is the problem? How should we know it when you don't tell us what you don't understand?
wrote on 19 Jan 2022, 14:11 last edited by@Christian-Ehrlicher said in How to exploit a json file in QT ?:
@feedain said in How to exploit a json file in QT ?:
is some thing that I doesn't understand
And what exactly is the problem? How should we know it when you don't tell us what you don't understand?
i don't understand on this example how he "create" example. For instance : i create a json file of characters of a game so we have "name" "power" "life"
How do i instanciate a new personnage with this json file ? -
@Christian-Ehrlicher said in How to exploit a json file in QT ?:
@feedain said in How to exploit a json file in QT ?:
is some thing that I doesn't understand
And what exactly is the problem? How should we know it when you don't tell us what you don't understand?
i don't understand on this example how he "create" example. For instance : i create a json file of characters of a game so we have "name" "power" "life"
How do i instanciate a new personnage with this json file ?wrote on 19 Jan 2022, 14:18 last edited by@feedain said in How to exploit a json file in QT ?:
How do i instanciate a new personnage with this json file ?
Do you mean you want an array of "personnage" objects? That was in the sample code above:
QJsonArray array; array.append(object);
You can keep appending new
object
s you create, to have as many as you want?Otherwise, not sure what you mean by "a new personnage with this json file". The file contains whatever it contains, if it contains 10 "personnages" you get 10 personnages. The file does not create further objects, other than whatever is in it. You can create more objects in code, e.g. perhaps by copying some existing personnage object you have read from the file, if that is what you want to do.
-
@Christian-Ehrlicher said in How to exploit a json file in QT ?:
@feedain said in How to exploit a json file in QT ?:
is some thing that I doesn't understand
And what exactly is the problem? How should we know it when you don't tell us what you don't understand?
i don't understand on this example how he "create" example. For instance : i create a json file of characters of a game so we have "name" "power" "life"
How do i instanciate a new personnage with this json file ?@feedain You should really be more clear when asking.
"How do i instanciate a new personnage with this json file ?" - do you mean you want to create an instance of a class and initialise its properties from values you read from a JSON file? If so then please tell us what exactly is not clear:- How to read JSON file?
- How to initialise an instance of a class?
8/28