Java读取Json对象中的Json数组

标签 java arrays json

我有一个像这样的字符串:

{"api_authentication":{"api_response":{"token":"XXXXXXXXXXXXXXXXXXXXXXXXX","firstname":"John","disabled":false,"attempts":0,"id":123,"lastname":"Malkovitch","expire":false,"status":0}}}

我可以把这个字符串变成一个对象:

JSONObject jobj = new JSONObject(response);

但我不知道如何获取 token 值,我尝试创建 JSONArrays 但出现未找到异常。

最佳答案

你可以这样做;

final JSONObject api_authentication = jobj.getJSONObject("api_authentication");
final JSONObject api_response = api_authentication.getJSONObject("api_response");
System.out.println(api_response.getString("token"));

如果 JSON 大括号中的任何值 { ... } ,则为 jsonObject 。如果值位于 [ ... ] 中,则这是 JsonArray。您还可以获取哪个是对象还是数组,并从中获取相关字段。因此,您的问题中的所有 json 元素都带有大括号。将其获取为 JsonObject

关于Java读取Json对象中的Json数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52642194/

相关文章:

java - 为什么同步变更操作时需要同步HashMap.get(key)?

java - 将字节数组中包含的 char 代码转换为 int 的简短方法?

javascript - jQuery : How get Json Key And Value by and this append (insert into ) list (ul)?

java - Java中的多线程访问文件

java - 如何轮询 FTP 位置以触发其中的更改?

arrays - swift:二维数组和字典之间的区别

c++ - 如何从二维数组构建对象的 std::vector

json - ElasticSearch 获取索引名称和存储大小

Android Volley 多个请求

php - 正确寻址 "Undefined property: stdClass::"