Java实现JSONObject合并

itlao6 JAVA 原创 开发&源码评论1,197字数 954阅读3分10秒阅读模式

由于算法修改,java这边结果处理有个简单的变更,需要对新旧算法输出的结果进行合并,存在相同指标时,以新算法导出的为准...

因为c++库返回的结果是json字符串,于是就写了个简单的合并方法,以便以后有类似需求的时候能重用。文章源自IT老刘-https://wp.itlao6.com/722.html

    /**
     * 将srcJObjStr和addJObjStr合并,如果有重复字段,以addJObjStr为准
     * @param srcJObjStr 原jsonObject字符串
     * @param addJObjStr 需要加入的jsonObject字符串 
     * @return srcJObjStr
     */
    private String combineJson(String srcJObjStr, String addJObjStr) throws JSONException {
        if(addJObjStr == null || addJObjStr.isEmpty()) {
            return srcJObjStr;
        }
        if(srcJObjStr == null || srcJObjStr.isEmpty()) {
            return addJObjStr;
        }
        
        JSONObject srcJObj = new JSONObject(srcJObjStr);
        JSONObject addJObj = new JSONObject(addJObjStr);
        
        combineJson(srcJObj, addJObj);

        return srcJObj.toString();
    } 
    
    @SuppressWarnings("unchecked")
    private JSONObject combineJson(JSONObject srcObj, JSONObject addObj) throws JSONException {

        Iterator<String> itKeys1 = addObj.keys();
        String key, value;
        while(itKeys1.hasNext()){  
            key = itKeys1.next();
            value = addObj.optString(key);
            
            srcObj.put(key, value);
        }  
        return srcObj;
    }

代码很简单,原理就是对json进行遍历替换,json处理用到了org.json库...文章源自IT老刘-https://wp.itlao6.com/722.html

原文:简书ThinkinLiu 博客: IT老五文章源自IT老刘-https://wp.itlao6.com/722.html

ps:点击这里可以下载(82.71k)文章源自IT老刘-https://wp.itlao6.com/722.html 文章源自IT老刘-https://wp.itlao6.com/722.html

继续阅读
weinxin
我的微信公众号
微信扫一扫关注公众号,不定时更新
itlao6
  • 本文由 发表于 2018年 12月 25日 10:32:05
  • 转载请务必保留本文链接:https://wp.itlao6.com/722.html
评论  0  访客  0
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定