[英]Unable to parse JSON file in Java
I have a json file in the below format: 我有以下格式的json文件:
{
"IsLastPage": false,
"EnrichedData": {
"Base": [
{
"Number": "001107635",
"Type": "EEG_PR"
},
{
"Number": "00110754",
"Type": "ABC_PR"
}
]
}
}
To parse it in java I am using the following piece of code: 为了在Java中解析它,我使用以下代码:
JSONObject jsonObject = new JSONObject(new FileReader("src\\enriched.json"));
JSONArray EnrichedData = jsonObject.getJSONArray("EnrichedData");
System.out.println(EnrichedData);
for(int i=0; i < EnrichedData.length(); i++) {
JSONObject row = EnrichedData.getJSONObject(i);
JSONArray elements = row.getJSONArray("Base");
for(int j=0; j < elements.length(); j++) {
JSONObject element = elements.getJSONObject(j);
JSONObject Number = element.getJSONObject("Number");
JSONObject Type = element.getJSONObject("Type");
System.out.println("Number: " + Number.getString("Number"));
System.out.println("Type: " + Type.getString("Type"));
}
}
But on executing this it throws exception that 但是执行此操作会引发异常
org.json.JSONException: JSONObject["Base"] not found. org.json.JSONException:找不到JSONObject [“ Base”]。
What wrong am I doing here? 我在这里做什么错?
Note that this is wrong: 请注意,这是错误的:
JSONArray EnrichedData = jsonObject.getJSONArray("EnrichedData");
EnrichedData
is not an array but a JSONObject
. EnrichedData
不是数组,而是JSONObject
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.