gpt4 book ai didi

java - Java中从json中获取键值 - JSON解析

转载 作者:行者123 更新时间:2023-12-04 01:32:41 27 4
gpt4 key购买 nike

我有一个如下的 json。我想从这个 jsonObject 获取 mobile_number。

json:-

{"id": "ABCD", "report": { "data": { "phone": { "mobile_number": 9876543210, "active": "Y", "content": null } } } }

我就是这样做的,它工作得很好,但是有人可以帮助我用任何其他方法来实现它,而无需获得每个 key 。

JSONObject jsonObject = new JSONObject(json);
JSONObject report = getJSONObjectFromJson(jsonObject, "report");
JSONObject data = getJSONObjectFromJson(jsonObject, "data");
JSONObject phone = getJSONObjectFromJson(data, "phone");
long mobileNumber = getLongFromJson(phone, "mobile_number");

private Long getLongFromJson(JSONObject object, String key){
return (object !=null && object.has(key)) ? object.getLong(key) : null;
}

private JSONObject getJSONObjectFromJson(JSONObject object, String key){
return (object !=null && object.has(key)) ? object.getJSONObject(key) : null;
}

最佳答案

我刚刚处理了类似的问题,并决定像这样使用 JsonPath:

final DocumentContext jsonContext = JsonPath.parse(jsonString);
final Object read = jsonContext.read("$['report']['data']['phone']['mobile_number']");

关于java - Java中从json中获取键值 - JSON解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58872549/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com