2017-02-07 31 views
-2

下面是我對用戶發送的消息的示例JSON輸出。我想統計每個用戶發送的郵件數量。問題是每個對象都以一個唯一的字符串開頭。 (即第一個對象開頭「-KWvQJDwln4eECyxtnF_」)如何統計用戶從json輸出發送的消息數

最終的結果我正在尋找的是: USER_ID:由用戶發送的消息數

[ null, { 
    "-KWvQJDwln4eECyxtnF_" : { 
    "blocked" : false, 
    "consumedByPartner" : false, 
    "dpid" : "example", 
    "groupId" : 0, 
    "id" : "-KWvQJDwln4eECyxtnF_", 
    "likes" : 61, 
    "messageType" : 0, 
    "name" : "jon", 
    "possibleAdultImage" : false, 
    "possibleViolentImage" : false, 
    "text" : "first message", 
    "time" : 1479539507645, 
    "userid" : 10 
    }, 
    "-KWvQk3XmYa-nwQ54g6x" : { 
    "blocked" : false, 
    "consumedByPartner" : false, 
    "dpid" : "example", 
    "groupId" : 0, 
    "id" : "-KWvQk3XmYa-nwQ54g6x", 
    "imageUrl" : "example", 
    "likes" : 60, 
    "messageType" : 0, 
    "name" : "jondotli", 
    "possibleAdultImage" : false, 
    "possibleViolentImage" : false, 
    "text" : "", 
    "time" : 1479539621666, 
    "userid" : 8 
    }, 
    "-KWvR6v45NvpO-kIhAne" : { 
    "blocked" : false, 
    "consumedByPartner" : true, 
    "dpid" : "example", 
    "groupId" : 0, 
    "id" : "-KWvR6v45NvpO-kIhAne", 
    "imageUrl" : "example", 
    "likes" : 126, 
    "messageType" : 1, 
    "name" : "jondotli", 
    "possibleAdultImage" : false, 
    "possibleViolentImage" : false, 
    "text" : "", 
    "time" : 1479539719365, 
    "userid" : 8 
    } 
    }] 
+0

JSON甚至無效,但您使用哪種語言?你有什麼嘗試? –

+0

我已糾正它。 我想解析它在Python中。 –

回答

0

@Satjot 1.您的JSON是無效。關閉「在第27行爲」imageUrl「:」例如, 2.將json保存爲json數組或者將它的字符串轉換爲jsonarray。在這裏我已經採取了字符串fullline,其中存儲了你的json。獲取用戶ID的解決方案是

JSONArray rootObject = new JSONArray(fullline);

 for (int i = 0; i < rootObject.length(); i++) { 

     if (rootObject.get(i) instanceof JSONObject) { 
      JSONObject elements = rootObject.getJSONObject(i); 
      Set<String> keys = elements.keySet(); 
      for (String k : keys) { 
       JSONObject keyRow = elements.getJSONObject(k); 

       Object userid = keyRow.get("userid"); 
       System.out.println(userid.toString()); 

      } 
     } 

    } 

如果這對你有幫助。請接受答案。

+0

_請接受答案._你怎麼能假設OP使用Java? –

+0

邏輯不依賴於語言。我已經給了他邏輯。 –

+0

這是一個jsonArray - 我試圖在Python中解析它。 –

相關問題