FastJson学习操作文档

本文详细介绍如何使用FastJSON库进行JSON数据的解析与操作,包括字符串与JSON对象的转换,以及如何从JSON数组中筛选特定数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.常见操作和方法

1.1 对象之间的转化

// String对象到JSONObject对象
JSONObject dataJson = JSONObject.parseObject(data);
//String对象到JSONArray对象
JSONArray dataList = JSONObject.parseArray(data);

2.操作实例

2.1 实例1

/**
 * 操作list格式的Json对象
 */
@Test
public void operateJsonList() throws Exception{
    //读取数据
    File file = new File("src/main/java/fastjson/data/JsonData.json");
    String data = FileUtils.readFileToString(file, "UTF-8");

    //String  --> JSONObject
    JSONObject dataJson = JSONObject.parseObject(data);

    //获取JSONObject中的list数据
    JSONArray jsonList = dataJson.getJSONObject("result").getJSONArray("rows");

    //遍历JSONArray
    for(Iterator iterator = jsonList.iterator();iterator.hasNext();){
        JSONObject jsonObject = JSONObject.parseObject(iterator.next().toString());
        Long id = jsonObject.getLong("id");
        System.out.println(id);
    }
}

2.2 实例2

/**
 * 从JSONArray中筛选出特定的数据
 * 基本思路就是:把符合的数据保存到另一个数据容器中,然后再把该容器Json序列化即可
 */
@Test
public void saveDataFromJsonArray() throws Exception{
    File file = new File("src/main/java/fastjson/data/JsonArrayData.json");
    String data = FileUtils.readFileToString(file, "UTF-8");

    JSONArray dataList = JSONObject.parseArray(data);
    //新建数据容器
    List<JSONObject> result = new ArrayList(dataList.size());
    //筛选sex==1的数据
    for(Iterator iterator=dataList.iterator();iterator.hasNext();){
        JSONObject next = (JSONObject) iterator.next();
        Integer sex = next.getInteger("sex");
        if(sex.equals(1)){
            result.add(next);
        }
    }
    //把新的容器进行序列化
    dataList = JSONObject.parseArray(result.toString());
    System.out.println(dataList);
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值