首页 > 解决方案 > 从 JSONObject 获取数据

问题描述

我有一个JSONObject并且想从中得到一个String并保存它。

SelVehicleJSON (JSONObject):
{
  "selVehicle":
  {
     "_id":"5b38be73257303206ce9b8f9",
     "userId":"5b34c591cb6084255857e338"
  }
}

我试过

String vehicleId = selVehicleJSON.getString("_id");

但我得到了错误

W/System.err:org.json.JSONException:_id` 没有值。

我究竟做错了什么?

标签: javajson

解决方案


层次感似乎是

selVehicle._id

或者在做之前设置根

selVehicleJSON.getString("_id");

编辑 1

尝试使用JsonPath。它使生活更轻松,并保持代码干净。在您的情况下,代码将如下所示:

public String getValue(JSONObject json, String path) {
    return JsonPath.read(json.toString(), path);
}

推荐阅读