java中fastJSON解析复合

本文介绍了如何使用JSONObject的getJSONObject,getJSONArray,和getString函数从JSON字符串中提取特定值,如例子中的Link字段,通过递归调用来解析复杂的数据结构。
摘要由CSDN通过智能技术生成

核心的是这几个函数,在什么时候使用

getJSONObject:取JSON对象时候用,返回JSON对象

getJSONArray:取数组时候用,返回JSON对象

getString:获取标签对应的值,返回字符串

比如:下边的JSON

{
  "msg": "success",
  "code": 200,
  "data": [
    {
      "basicInfo": {
        "prefixPhone": "86",
        "aimWorkCity": "",
        "movedAt": "2023-07-14T10:08:31.000Z",
        "sourceId": 351085,
        "createdAt": "2023-06-25T03:17:35.000Z",
        "Link": "https://asasdas.com/forward",
        "pipelineId": 74623,
       }}]}

要想获取Link 对应的值:

//首先先把字符串变成JSON对象

JSONObject jsonObject = JSONObject.parseObject(result.getBody().toString());
//解析取值
String resumeDataInfo =jsonObject.getJSONArray("data").getJSONObject(0).getJSONObject("basicInfo").getString("Link");

ps:解释下解析取值过程

//解析JSON获取link对应的值
//data是个array,所以用getJSONArray,即jsonObject.getJSONArray("data")
//然后要取数组的第几个元素,即jsonObject.getJSONArray("data").getJSONObject(0)
//再获取basicInfo 的JSON对象,即jsonObject.getJSONArray("data").getJSONObject(0).getJSONObject("basicInfo")
//最后再取值

jsonObject.getJSONArray("data").getJSONObject(0).getJSONObject("basicInfo").getString("lLink")


 

使用Fastjson解析JSON文件很简单,你可以按照以下步骤进行操作: 1. 导入Fastjson库 在Java代码导入Fastjson库,你可以在类的头部添加以下代码: ```java import com.alibaba.fastjson.*; ``` 2. 读取JSON文件 使用Java的文件读取操作,读取JSON文件并存储为字符串。以下是一个简单的示例: ```java String jsonStr = new String(Files.readAllBytes(Paths.get("path/to/json/file.json"))); ``` 注意,你需要将文件路径替换为你的实际路径。 3. 解析JSON字符串 使用Fastjson的静态方法 `parseObject()` 解析JSON字符串,并将其转换为Java对象。以下是一个简单的示例: ```java JSONObject jsonObj = JSON.parseObject(jsonStr); ``` 注意,上面的示例假设JSON字符串表示一个JSON对象。如果JSON字符串表示一个JSON数组,你可以使用`parseArray()` 方法解析: ```java JSONArray jsonArray = JSON.parseArray(jsonStr); ``` 4. 获取JSON对象的值 一旦你将JSON字符串解析Java对象,你可以使用Java对象的方法或属性来获取对象的值。以下是一个简单的示例: ```java String name = jsonObj.getString("name"); int age = jsonObj.getIntValue("age"); ``` 注意,上面的示例假设JSON对象包含一个名为“name”的字符串属性和一个名为“age”的整数属性。 以上就是使用Fastjson解析JSON文件的基本步骤。你可以在Java代码使用其他Fastjson方法和属性,以便更方便地操作JSON数据。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值