I'm new to JSON and I'm trying to parse my JSON File into Java, and it works, but I've got Objects/Arrays that contains more arrays and I don't know how to iterate it correctly. This is my JSON File:
{
"quiz": {
"sport": {
"q1": {
"question": "Which one is correct team name in NBA?",
"options": [
"New York Bulls",
"Los Angeles Kings",
"Golden State Warriros",
"Huston Rocket"
],
"answer": "Huston Rocket"
}
},
"maths": {
"q1": {
"question": "5 + 7 = ?",
"options": [
"10",
"11",
"12",
"13"
],
"answer": "12"
},
"q2": {
"question": "12 - 8 = ?",
"options": [
"1",
"2",
"3",
"4"
],
"answer": "4"
}
}
}
}
I don't know how I can get all data in this structure. I mean that I know it's a quiz and the two topics are sport and maths and that each topic has questions and an answer.
I would like to have each value avaiable.
This is my Java Code
JSONParser jsonParser = new JSONParser();
try
{
JSONArray a = (JSONArray) jsonParser.parse("pathToFile");
for (Object o : a)
{
JSONObject task1 = (JSONObject) o;
String name = (String) task1.get("quiz");
System.out.println(name);
String topic = (String) task1.get("sport");
System.out.println(topic);
}
}catch (ParseException e)
{
e.printStackTrace();
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
Can someone explain the logic to me?
Quiz,Sport, andMaths. If you have control of creating theJSON, you should makeq1, q2an array in my opinion.