在以下JSON格式的文件上使用Simple-JSON,我很难理解如何访问“名称”下数组内的对象。JSON解析嵌套数组对象
JSON文件:
[
{
"name":{
"firstName": "Developer",
"lastName": "D"
},
"id": 00,
"permissionLevel": 3,
"password": 12345
},
{
"name":{
"firstName": "Bob",
"lastName": "Smith"
},
"id": 01,
"permissionLevel": 2,
"password": 23456
}
]
我能够获得信息,所有的其他内容,因为他们不是位于嵌套数组;但是,当我试图检索“名称”下的对象时,所有输出的都是JSON文件中找到的字符串。
当前代码:
String[] searchData = {
"name",
"firstName",
"lastName",
"id",
"permissionLevel",
"password"
};
jsonArray = (JSONArray)new JSONParser().parse(s);
for(int i = 0; i < jsonArray.size(); i++){
JSONObject jo = (JSONObject)jsonArray.get(i);
for(int j = 0; j < searchData.length; j++){
System.out.println(
searchData[j] + ": " + jo.get(searchData[j]));
}
}
输出:
name: [{"firstName":"Developer","lastName":"D"}]
firstName: null
lastName: null
id: 0
permissionLevel: 3
password: 12345
name: [{"firstName":"Bob","lastName":"Smith"}]
firstName: null
lastName: null
id: 1
permissionLevel: 2
password: 23456
正如你可以看到, “名”,从JSON文件输出一个字符串,而不是每个单独的值。最后,我需要编写一个通用代码,可以为每个输入的文件接受新的“searchData”标签。
- 可能有人能够指导我如何获取嵌套数组中的对象 ?
- 或者我需要使用不同的库?如果是这样,哪一个对Java最有效?我不是针对Android编程的,我一直在不断地为Android找到图书馆建议。
我的道歉,如果这篇文章是一个骗局,但没有其他职位帮助我。