我有一个二维JSON数组对象,如下所示:
{"enrollment_response":{"condition":"Good","extra":"Nothig","userid":"526398"}}
我想解析上述Json数组对象以获取条件、额外信息和用户ID。因此,我使用了以下代码。
JSONParser parser = new JSONParser();
try {
Object obj = parser.parse(new FileReader("D:\\document(2).json"));
JSONObject jsonObject = (JSONObject) obj;
String name = (String) jsonObject.get("enrollment_response");
System.out.println("Condition:" + name);
String name1 = (String) jsonObject.get("extra");
System.out.println("extra: " + name1);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (ParseException e) {
e.printStackTrace();
}
它抛出了一个错误,如下:
"Exception in thread "main" java.lang.ClassCastException:
org.json.simple.JSONObject cannot be cast to java.lang.String at
com.jsonparser.apps.JsonParsing1.main(JsonParsing1.java:22)"
请有人帮忙解决这个问题。
enrollment_response
的值是一个对象)? - Felix Klingorg.json.simple
可能是你可能选择的最糟糕的 JSON 解析库。请,请使用其他东西。Jackson、Gson,甚至旧的 json.org 库都要好得多。 - Brian Roach