JSONObject对同一个key重新put时,新值就会取代旧值,没有set之类的方法
构建json string时,所有的引号都要转义
package xx;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
// 对JSONObject中的指定字段重新赋值
public class testJsonReplace {
public static void main(String[] args) {
String query_jsonstr = "{\"timezone\":\"GMT+0\",\"action\":\"front_BRAND\",\"format\":\"true\",\"lan\":\"en_us\",\"column\":[\"day\",\"impressions\",\"clicks\",\"ctr\",\"brand_estimated_ecpm\",\"pay_out\"],\"dimension\":[\"day\"],\"filter\":{\"posid\":{\"op\":\"in\",\"value\":\"2454105\"}},\"start\":1528761600000,\"end\":1529452800000}";
JSONObject query = JSON.parseObject(query_jsonstr);
if (query.getJSONObject("filter") != null) {
JSONObject posJson = new JSONObject();
posJson.put("op", "in");
posJson.put("value", "2454117");
query.getJSONObject("filter").put("posid", posJson);
}
String posid = query.getJSONObject("filter").getJSONObject("posid").getString("value");
String newJsonStr = query.toJSONString();
System.out.println(newJsonStr);
}
}
JSON对象字段替换
本文介绍了一个简单的Java程序,演示了如何使用阿里巴巴Fastjson库中的JSONObject来更新特定字段的值,并展示了如何将修改后的对象转换为JSON字符串。
1047

被折叠的 条评论
为什么被折叠?



