java / jsonsimple - 使用key从jsonarray获取值

时间:2011-12-05 13:07:27

标签: java json key json-simple

我有以下示例json输出形式java / jsonsimple。

JSONArray是:

[{"dd1":{"actionType":"Dept","collegeID":""}},{"dd2":{"actionType":"Dept","collegeID":""}}] 

我试图通过使用“dd1”而不是ndx来弄清楚如何获取“dd1”键的值。

基本上,我希望能够测试一个给定的“密钥”,看它是否在数组中,带有一个值。

JSONArray的文档,允许foo.get(1),但不允许foo.get(“dd1”)

感谢

PS。

我尝试将上面的插入用于JSONObject,然后执行foo.get(“dd1”)但我没有得到该值。

这个问题似乎归结为如何在[]数组中找到dict。

doing something like foo.get(1).get("dd1") doesn't work...

感谢

2 个答案:

答案 0 :(得分:2)

你的JSON输入中有一个数组包装你的字典,所以你必须先得到字典,例如:

foo.get(1).get("dd1");

但是你可以将你的JSON改成一个简单的字典,如下所示:

{
   "dd1": {"actionType":"Dept","collegeID":""},
   "dd2": {"actionType":"Dept","collegeID":""}
}

然后你就能做到:

foo.get("dd1");

答案 1 :(得分:0)

你正在混合json数组和json对象。使用foo.get(1),您将检索包含字段“dd1”的JSON对象 - 然后您可以使用get("dd1")