来自JSONArray的Java JSONObject会出错

时间:2015-06-17 07:25:05

标签: java

我有一个简单的Json字符串作为JSONArray,如下所示:

[{"id_group":"19","state_active":"1","title":"hello world","token":"55811d9184921469"}]

我试图通过此代码获取title对象:

JSONObject title =  jsonArray.getJSONObject(0).getJSONObject("title");

使用以下标题键的其他值更新:

title.put("title","sample updated string");

我收到此错误:

title of type java.lang.String cannot be converted to JSONObject

对于这一行

JSONObject title =  jsonArray.getJSONObject(0).getJSONObject("title");

3 个答案:

答案 0 :(得分:0)

JSONObject包含keyvalue。在您的情况下,titleJSONObject中的关键。做这样的事......

JSONObject title =  jsonArray.getJSONObject(0);
title.put("title","sample updated string");

答案 1 :(得分:0)

标题不是JSON Object key key-Value pair,因此您无法使用

获取标题
getJSONObject("title");

相反,你应该做这样的事情

JSONObject outerJson=jsonArray.getJSONObject(0);
String title =outerJson.getString("title"); //Existing title Value
//Now Modifying title 
title="New Title";
outerJson.put("title",title);

答案 2 :(得分:0)

所以,你的错误声称自己:title是 String ,而不是JSONObject