【第18篇】通过fastjson的JSON对象类处理json数组数据
2015-01-19 11:39
591 查看
[{ "info": { "users": { "username": "东升布艺", "email": "jilongliang@sina.com", "tel": "111111111", "age": "25" }, "address": { "street": "云城区闻莺路东升布艺", "province": "广东省", "district": "云城区", "city": "云浮市" } } }]
package ivyy.taobao.com.domain.fastjson; import java.util.Iterator; import ivyy.taobao.com.utils.IoUtils; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; /** *@DEMO:json *@Java:JSONTest3.java *@Date:2015-1-19上午9:44:14 *@Author:liangjilong *@Email:jilongliang@sina.com *@Weibo:http://weibo.com/jilongliang *@Version:1.0 *@Description:通过fastjson的JSON对象类处理json数组数据 */ public class JSONTest3 { public static void main(String[] args) { //1、处理文件路径 String filePath=JSONTest3.class.getClassLoader().getResource("doc/json1.json").getPath(); //2、读取文件里面的数据 String content=IoUtils.reader(filePath); //3、把数据转换成json数组 JSONArray jarr=JSON.parseArray(content); //-----------------------------方法一----------------------------- //遍历json数组节点 for (Iterator iterator = jarr.iterator(); iterator.hasNext();) { JSONObject object = (JSONObject) iterator.next(); //拿出info节点 JSONObject infoObj=JSON.parseObject(object.get("info").toString()); //拿出address节点 JSONObject addrObj=JSON.parseObject(infoObj.get("address").toString()); System.out.println(addrObj.get("province"));//拿出province节点 System.out.println(addrObj.get("city"));//拿出city节点 System.out.println(addrObj.get("district"));//拿出district节点 System.out.println(addrObj.get("street"));//拿出street节点 System.out.println(addrObj.getString("street"));//拿出street节点 } //-----------------------------方法二----------------------------- //遍历json数组节点 for (int i=0;i<jarr.size();i++) { JSONObject object = (JSONObject) jarr.get(i); //拿出info节点 JSONObject infoObj=JSON.parseObject(object.get("info").toString()); //拿出address节点 JSONObject addrObj=JSON.parseObject(infoObj.get("address").toString()); System.out.println(addrObj.get("province"));//拿出province节点 System.out.println(addrObj.get("city"));//拿出city节点 System.out.println(addrObj.get("district"));//拿出district节点 System.out.println(addrObj.get("street"));//拿出street节点 System.out.println(addrObj.getString("street"));//拿出street节点 } //-----------------------------方法三----------------------------- //-----------------------------还可以使用do while while..----------------------------- //参考文章http://blog.csdn.net/jilongliang/article/details/42841811 的getArrayToJsonByMap方法 //遍历json数组节点 for (Object object : jarr) { JSONObject obj=JSON.parseObject( object.toString()); JSONObject infoObj=JSON.parseObject(obj.get("info").toString()); //拿出address节点 JSONObject addrObj=JSON.parseObject(infoObj.get("address").toString()); System.out.println(addrObj.get("province"));//拿出province节点 System.out.println(addrObj.get("city"));//拿出city节点 System.out.println(addrObj.get("district"));//拿出district节点 System.out.println(addrObj.get("street"));//拿出street节点 System.out.println(addrObj.getString("street"));//拿出street节点 } } }
相关文章推荐
- Ajax 如何通过url 传递Json 数据或者数组 给PHP进行处理
- fastJson在java后台转换json格式数据探究(二)--处理数组/List/Map
- 【第17篇】通过fastjson去操作对象数据并处理json数据
- 通过FastJson把字符串转换成JSON和Map和List对象处理json数据
- 【第16篇】通过fastjson去解析json数组数据
- [javase][json]fastJson在java后台转换json格式数据探究--处理数组/List/Map
- 【第21篇】通过Gson去把字符串转成json,对象转成Json,数组转换成Json处理Json数据
- 【第15篇】通过FastJson把字符串转换成JSON和Map和List对象处理json数据
- 【第28篇】通过Gson和FastJson格式化Json数据
- 【第3篇】通过JSON-Lib把数组转换成Json数据
- mybatis 处理数组类型及使用Json格式保存数据 JsonTypeHandler and ArrayTypeHandler
- 【第22篇】通过JackJson去读取Json数组数据
- mybatis 处理数组类型及使用Json格式保存数据 JsonTypeHandler and ArrayTypeHandler
- 前台获取后台的数据,通过JSON后去后台的对象的数组
- mybatis 处理数组类型及使用Json格式保存数据 JsonTypeHandler and ArrayTypeHandler
- json通过一般处理程序向jquery传数据的总结(基于ligerui)
- fastJson在java后台转换json格式数据探究(二)--处理数组/List/Map
- fastJson在java后台转换json格式数据探究(二)--处理数组/List/Map
- fastjson 对于json数组字符串的处理
- mybatis 处理数组类型及使用Json格式保存数据 JsonTypeHandler and ArrayTypeHandler