基本上,我有下面的 JSON 文件,我需要阅读他并添加到 Java 中的对象列表中,在这种情况下我应该使用哪个库?我最大的困难是从数组而不是普通对象开始读取 Json,并在第一个数组的元素内尝试读取里面的另一个数组。
[
{
"name: "Andrew",
"age": 21,
"parents": [
{
"name": "Joseph",
"age": 18
},
{
"name": "Joseph",
"age": 18
}
]
},
{
"name: "Maria",
"age": 35,
"parents": [
{
"name": "Kassandra",
"age": 16
},
{
"name": "Abigail",
"age": 22
}
]
}
]
[编辑 06/11/2022]
我在下面创建了这个 github gist 来回答这个问题,谢谢大家的帮助。
答案:https ://gist.github.com/guigonzalezz/fcd8724ce0075efcb486763c067565c2
有很多 API 和库,但我更喜欢使用org.json
json.org 建议的 API
您还可以使用 GSON 库,它是用于将 Java 对象序列化和反序列化到(和从)JSON 的最佳库之一。
这是使用 org.json API 阅读以上 JSON 的快速演示。
import org.json.JSONObject;
import org.json.JSONArray;
public class HelloWorld {
public static void main(String[] args) {
String jsonString = "[ { \"name\": \"Andrew\", \"age\": 21, \"parents\": [ { \"name\": \"Joseph\", \"age\": 18 }, { \"name\": \"Joseph\", \"age\": 18 } ] }, { \"name\": \"Maria\", \"age\": 35, \"parents\": [ { \"name\": \"Kassandra\", \"age\": 16 }, { \"name\": \"Abigail\", \"age\": 22 } ] } ]";
JSONArray json = new JSONArray(jsonString);
for(int i=0; i<json.length(); i++){
JSONObject j = json.getJSONObject(i);
System.out.println(j + "\n------");
}
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句