Wie lese ich eine JSON-Datei (Array-Form) mit einer einfachen JSON-Bibliothek?

Post a reply

Smilies
:) :( :oops: :chelo: :roll: :wink: :muza: :sorry: :angel: :read: *x) :clever:
View more smilies

BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: Wie lese ich eine JSON-Datei (Array-Form) mit einer einfachen JSON-Bibliothek?

by Guest » 22 Dec 2024, 22:07

Eigentlich ist das folgende Beispiel eine Antwort irgendwo in StackOverFlow.
Ich habe versucht, den folgenden Code zu verwenden, aber

JSONArray a = (JSONArray) parser.parse(new FileReader("c:\\exer4-courses.json"));


Die obige Zeile funktioniert aufgrund der folgenden Ausnahme nicht.

java.lang.ClassCastException: org.json.simple.JSONObject cannot be cast to org.json.simple.JSONArray


Gibt es eine Möglichkeit, meine JSON-Datei zu lesen?

JSON-Datei:

[
{
"name": "John",
"city": "Berlin",
"cars": [
"audi",
"bmw"
],
"job": "Teacher"
},
{
"name": "Mark",
"city": "Oslo",
"cars": [
"VW",
"Toyata"
],
"job": "Doctor"
}
]


Java-Code:

JSONArray a = (JSONArray) parser.parse(new FileReader("c:\\exer4-courses.json"));

for (Object o : a) {
JSONObject person = (JSONObject) o;

String name = (String) person.get("name");
System.out.println(name);

String city = (String) person.get("city");
System.out.println(city);

String job = (String) person.get("job");
System.out.println(job);

JSONArray cars = (JSONArray) jsonObject.get("cars");

for (Object c : cars) {
System.out.println(c + "");
}
}

Top