java中如何读取json文件,在本地有E:a.json文件,想读取这个json文件里面的内容,怎样实现

java中如何读取json文件,在本地有E:a.json文件,想读取这个json文件里面的内容,怎样实现,第1张

//saveJsonFile("E:\\yindd\\岩模slaughter.json")

//json文件存放路径(如:E:\a.json)

String data= ReadFile.readFile("F:\\a.json")

System.out.println(data)

JSONObject jsonObj = JSONObject.fromObject(data)

//得到A对粗并缓象

JSONArray arrayA=jsonObj.getJSONArray("A")

A a = (A) JSONObject.toBean((JSONArray.fromObject(arrayA.toString()).getJSONObject(0)),A.class)

//得到B集合蔽历

JSONArray arrayB=jsonObj.getJSONArray("B")

List<B>listB=new ArrayList<B>()

for(int i=0i<arrayB.size()i++){

B b=(B)JSONObject.toBean((JSONArray.fromObject(arrayB.toString()).getJSONObject(i)),B.class)

listB.add(b)

}

//得到C集合

JSONArray arrayC=jsonObj.getJSONArray("C")

List<C>listC=new ArrayList<C>()

for(int i=0i<arrayB.size()i++){

C c=(C)JSONObject.toBean((JSONArray.fromObject(arrayC.toString()).getJSONObject(i)),C.class)

listB.add(c)

}

json可以看成是由JSONObject与JSONArray组成的,他们彼此可以相互嵌套。如:

JSONObject obj=jsonObject.getJSONObject("第一级Object名")

JSONArray jsonArray = obj.getJSONArray("Object中的array名")

JSONObject pages = jsonArray.getJSONObject(0)//从jsonArray中解仔掘乱析第一个Object

JSONObject pageTimings=pages.getJSONObject("继续解析array中念档的object")

String onContentLoad=pageTimings.getString("onContentLoad")//得到想要的值

把{}大括号扩起来的看成是object,如果有名字就根据名字来解析,如果没名字就根据序号来解析,上面的散掘代码两种情况均有涉及,请注意参考与更改变量名。[]扩起来的看成数组,用getArray解析,同样可以用名字或序号解析,jsonObject是读取进来的json文件的对象


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12265360.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存