Android如何在JSONObject中更改键/值对的值

时间:2014-04-21 09:59:17

标签: android json

您好我想更改/更改JSON对象内部的字符串的值,该对象位于JSONArray内部,并且来自存储在内部存储中的文件。

我最初的想法是将对象转换为字符串执行查找替换并转换回JSONObject搜索JSONArray以获取JSONObject,删除旧的并放入新的。然后将数组作为.JSON文件保存到内部存储(这将替换已存在的文件,还是会创建另一个具有相同名称的文件?)。

这是我对如何做到这一点的初步想法,但这是正确的方法还是更方便更有效的方法呢?

3 个答案:

答案 0 :(得分:2)

首先,您需要从JSON数组中检索所需的JSON对象。

您可以使用

直接更新JSON对象的键值对

<强> mJsonObj.put("<key>", <value>)

答案 1 :(得分:0)

取决于您用于解析JSON的库。有些人允许使用像jsonOArray.get("jsonObject").put("key", "val");

这样的代码

有些人需要先获取对象,然后执行类似

的操作
JsonObj = jsonArray.get("jsonObject"); jsonObj.putVal("key", "val");

您使用哪个库来处理json?

答案 2 :(得分:0)

尝试使用:

nameValuePairs.add(new BasicNameValuePair("cus_id", cus_id));

获取数据:

 JSONObject json = new JSONObject(responseString);
 JSONArray jArray = json.getJSONArray("customer");
for (int i = 0; i < jArray.length(); i++) {
JSONObject json_data = jArray.getJSONObject(i);
cus_points = json_data.getString("cus_points");