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传输数据使用,对于以上的操作使用的几率不高,但是一定会用.

猜你喜欢

转载自blog.csdn.net/qq_43386754/article/details/86299933
今日推荐