解析json串

原创 2016年08月30日 16:29:17
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
//import org.json.JSONArray;
//import org.json.JSONObject;
import net.sf.json.JsonConfig;
import java.util.HashMap;
import java.util.Iterator;


public class Analysis {
    private HashMap map;
    private JsonConfig jc;
    public Analysis() {
        jc = new JsonConfig();
        jc.setClassMap(new HashMap<Object,Object>());
        jc.setRootClass(HashMap.class);
        jc.setArrayMode(JsonConfig.MODE_LIST);

        map = new HashMap<String, String>();
    }


    public HashMap getRespose(String expected, String index, int instance){

        String temp = "";
        if(index != null){
            temp = index;
        }

        JSONObject jsonObject = JSONObject.fromObject(
                JSONObject.fromObject(expected.toString()), jc);

        Iterator<String> it =  jsonObject.keys();
        String args = temp;

        while (it.hasNext()){
            String key = it.next();
            temp = args + "." + key;

            if(instance != -1){
                temp = args + "[" + instance + "]" + "." + key ;
            }
            Object vaule = jsonObject.get(key);
            Log.commentStep(temp);
            if(vaule instanceof JSONObject){

                getRespose(jsonObject.get(key).toString(), temp, -1);
            }
            else if(vaule instanceof JSONArray){

                JSONArray arrays = (JSONArray) vaule;
                for(int i = 0; i < arrays.size(); i++){

                    StringBuilder str = new StringBuilder(arrays.getJSONObject(i).toString());
                    try {
                            getRespose(str.toString(), temp, i);
                    } catch (Exception e) {
                        Log.commentStep(temp + vaule.toString() + " 不符合规范");
                    }
                }

            }
            else{

                map.put(temp, vaule.toString());
            }


        }

        return map;
    }
}

Oracle解析json字符串 获取指定值自定义函数代码

http://www.oschina.net/code/snippet_1162040_48289 [1].[代码] ty_tbl_str_split 跳至 [1] [2] [3...
  • e_wsq
  • e_wsq
  • 2016年03月07日 14:06
  • 2577

Oracle JSON 字符串处理实例

--从JSONArray中取数据 SELECT jt.* FROM JSON_TABLE('[ { "device_type_id": 1, ...
  • e_wsq
  • e_wsq
  • 2017年03月03日 21:21
  • 2044

hive常用函数&nbsp;两层json格式解析

转自http://blackproof.iteye.com/blog/2108353 字符串函数 字符串长度函数:length   Java代码  两层json格式解析" /> 语法...
  • szdbl
  • szdbl
  • 2015年09月18日 15:48
  • 2801

复杂json数据的解析

之前写过一篇  GSON解析json数据总结 现在附载一篇整合复杂多层嵌套的json数据解析总结 解析复杂实例一: { "data": { "fee...
  • playsit
  • playsit
  • 2016年09月07日 17:59
  • 1549

浏览器解析json数据

首先在服务器中,通过URL访问api所在的.php文件。例如下面的这个api,我们在ie中进行测试: ...
  • u014552756
  • u014552756
  • 2015年12月14日 15:35
  • 1064

超详细JSON解析步骤

JSON简介 JAVAScript Object Notation是一种轻量级的数据交换格式具有良好的可读和便于快速编写的特性。业内主流技术为其提供了完整的解决方案(有点类似于正则表达式 ,获得...
  • miaozhenzhong
  • miaozhenzhong
  • 2016年09月19日 14:58
  • 20871

C#解析JSON字符串总结

原文链接:http://www.cnblogs.com/zxx193/p/3664562.html JSON文件读取到内存中就是字符串,.NET操作JSON就是生成与解析JSON字符串。 操作J...
  • u013096666
  • u013096666
  • 2017年08月01日 13:42
  • 255

一个.NET通用JSON解析/构建类的实…

一个.NET通用JSON解析/构建类的实现(c#) 在.NET Framework 3.5中已经提供了一个JSON对象的序列化工具,但是他是强类型的,必须先按JSON对象的格式定义一个类型,并将...
  • fz2543122681
  • fz2543122681
  • 2014年03月24日 13:08
  • 724

java解析json字符串的两种方法详解(Android通用)

java解析json字符串的两种方法详解(Android通用)
  • canot
  • canot
  • 2016年01月23日 20:20
  • 9403

python解析json串与正则匹配对比

现在有如下格式的json串: “detail_time”:”2016-03-30 16:00:00”,”device_id”:”123456”,”os”:”Html5Wap”,”session_fl...
  • bitcarmanlee
  • bitcarmanlee
  • 2016年03月31日 14:55
  • 2733
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:解析json串
举报原因:
原因补充:

(最多只允许输入30个字)