如何在JSONObject中修改单个值?

时间:2018-07-08 11:48:08

标签: java android json

我正在使用Google Play游戏快照,并且必须使用JSON传递需要保存的数据。

这是JSON文件:

private byte[] saveToJSON(){
    try {
        JSONObject obj = new JSONObject();
        obj.put("total coins", Settings.totalCoins);
        return obj.toString().getBytes();
    } catch (JSONException e) {
        e.printStackTrace();
        throw new RuntimeException("Error converting save data to JSON.", e);
    }
}

现在,当我尝试使用此代码仅更改其中之一时:

{"total coins":2099300}

整个文件的get仅更改为一个参数,它变为:

hasOccupation

现在如何只修改单个参数值?

对不起,这是我第一次使用JSON

1 个答案:

答案 0 :(得分:1)

JSONObject obj = new JSONObject();使您创建一个新的json对象,这就是原因,您可以更改为以下代码:

String jsonStr = "";//your json string
JSONObject obj = new JSONObject(jsonStr);
obj.put("total coins", Settings.totalCoins);