Java读取JSON数据

  • 使用JSONObject与JSONArray可以生产JSON数据读取之外也可以进行数据的读取处理,读取处理的方式也很容易,JSON读取操作的只能欧式字符串数据.
  • 示例JSON数据,在java中使用时需要将双引号前加个转义字符"\"才可以使用
{“name”:“Maoshu”,“age”:22,“sex”:“男”,“skill”:[“java”,“css”,“html”,“JavaScript”],“depts”:[{“deptno”:11,“dname”:“Accounting”,“loc”:“中国”},{“deptno”:22,“dname”:“Maneager”,“loc”:“上海”}]}
  • 使用JSONObject.getString()方法读取出数据
package mao.shu.jsondemo;


import net.sf.json.JSONArray;
import net.sf.json.JSONObject;

public class json_demo6 {
    public static void main(String[] args) {
        String data = "{\"name\":\"Maoshu\",\"age\":22,\"sex\":\"男\"," +
                                "\"skill\":[\"java\",\"css\",\"html\",\"JavaScript\"]," +
                                    "\"depts\":[{\"deptno\":11,\"dname\":\"Accounting\",\"loc\":\"中国\"}," +
                                             "{\"deptno\":22,\"dname\":\"Maneager\",\"loc\":\"上海\"}]}";
        //解析字符串中的数据



      JSONObject jsonObject = JSONObject.fromObject(data);
      //读取
        String name = jsonObject.getString("name");
        System.out.println("年龄:"+name);

        //取得skill数组
        JSONArray skill = jsonObject.getJSONArray("skill");
        //遍历JSONArray数组
        for (int i = 0; i < skill.size(); i++) {
            System.out.println(skill.get(i));
        }
        //得到deptsJSONObject对象
        JSONArray depts = jsonObject.getJSONArray("depts");
        for (int i = 0; i < depts.size(); i++) {
            JSONObject tempDept = depts.getJSONObject(i);
            System.out.println("部门编号:"+tempDept.getString("deptno"));
            System.out.println("部门名称:"+tempDept.getString("dname"));
            System.out.println("部门位置:"+tempDept.getString("loc"));
        }
    }
}

  • 运行结果

在这里插入图片描述

  • 在以后进行程序开发的时候,大部分情况下JSON都会作为Ajax传输数据使用,对于以上的操作使用的几率不高,但是一定会用.
  • 9
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值