簡單的解析Json格式字符串練習

    今天學習了一下編寫Json格式的接口,發現也不是很麻煩,順便寫了兩個簡單的解析json格式字符串的方法,貼出來分享一下下。方法以下: json

//格式一 如//{"username":"7845166313","password":"123456"} 這種格式的解析,返回Map對象。
    public Map<Object,Object> jsonToMapObject(String json){
        Map<Object,Object> map = new HashMap<Object,Object>();//new一個map對象
        String str = json.replace("{","").replace("}","").replaceAll("\"", "");//去掉大括號、雙引號
        String[] ary1 = str.split(",");//根據」,「號分隔字符串,得到數組對象
        for(String s : ary1){//循環取出數組中的對象
            String[] ary2 = s.split(":");//根據」:「冒號分隔字符串,得到鍵-值數組對象
            map.put(ary2[0],ary2[1]);//將對象以鍵-值對的方式存入map中
        }
        return map;
    }

    
    //格式二如://[{"username":"7845166313","password":"123456"},{"username":"545434","password":"3455"},{"username":"45354","password":"345454"}] 數組格式的解析
    public List<Map<Object,Object>> jsonListToObjectList(String json){
        List<Map<Object,Object>> listMap = new ArrayList<Map<Object,Object>>();//實例化一個map類型的集合對象
        String data = json.replaceAll("\"", "").replace("[{", "").replace("}]","");//去掉先後括號、雙引號
        String[]arry = data.split("},\\{"); //根據「},{」分隔字符串,得到對象數組
        for(int i=0;i<arry.length;i++){
            String[] arry2 = arry[i].split(",");//以逗號分隔對象("username":"7845166313","password":"123456")
            Map<Object,Object> m = new HashMap<Object,Object>();//實例化map對象
            for(int j=0;j<arry2.length;j++){
                String[] aray3 = arry2[j].split(":");//根據」:「冒號分隔字符串,得到鍵-值數組對象
                m.put(aray3[0],aray3[1]);//將對象以鍵-值對的方式存入map中
            }
            listMap.add(m);//將對象存入集合中
        }
        return listMap;
    } 數組

   還有不少其餘的格式,我這裏就寫了兩種簡單的格式,臨時寫的,可能還有不少其餘因素沒考慮進來,之後會慢慢改正...歡迎大俠們批評指正... 學習

相關文章
相關標籤/搜索