2015-06-10 24 views
0

這是一個基本的Java問題,我認爲我無法解決如何解決問題。在Java中創建列表中的JSON數組<Object> in Java

我從谷歌Analytics(分析)API的數據和我的數據庫中的行存儲爲一個字符串作爲JSONArray

[["New Zealand","Auckland","1640","8.795731707317072","516.4469512195122"],["New Zealand","Wellington","1314","8.428462709284627","580.3302891933029"]] 

對於谷歌地圖,我需要一個JSON陣列:

function drawMap() { 
     var data = google.visualization.arrayToDataTable([ 
     ['City', 'Popularity'], 
     ['New York', 200], 
     ['Boston', 300], 
     ['Miami', 400], 
     ['Chicago', 500], 
     ['Los Angeles', 600], 
     ['Houston', 700] 
     ]); 

https://developers.google.com/chart/interactive/docs/gallery/geomap

我需要改變我的數據,解析它並遍歷它以從每個對象中移除第一個(即「新西蘭」)和最後一個變量 - 我也是nee d添加標題,即[「市」,「流行」]

使用GSonBuilder我可以創建JSON

[{"city":"Wellington","sessions":"1314","viewsPerSessions":"8.428462709284627","avgDuration":"8.428462709284627"},{"city":"Christchurch","sessions":"432","viewsPerSessions":"10.127314814814815","avgDuration":"10.127314814814815"}] 

我如何把它轉換成一個JSON陣列?

+0

這是JSON!,無論如何,你的問題是什麼?你有數據和你想調用的方法,有什麼問題?更好地解釋你的問題 – Sulfkain

+0

我需要更改我的數據,解析它並遍歷它以從每個對象中刪除第一個(即「新西蘭」)和最後一個變量 - 我還需要添加標題,即['City', 'Popularity'] – user5839

+0

好吧,你的問題是「如何解析這個信息」?如果是的話,請編輯你的問題來解釋你的問題,而不是評論。如果這是你的問題,我會幫你解析一個JSON文件 – Sulfkain

回答

1

我使用Android的JSON解析。有了這個,你可以得到你想要的。

試試這個:

JSONArray js_data = [["New Zealand","Auckland","1640","8.795731707317072","516.4469512195122"],["New Zealand","Wellington","1314","8.428462709284627","580.3302891933029"]]; 
int lenght = js_data.length(); 
JSONArray city; 
for(int i=0;i<length;i++) { 
    //get each city 
    city = js_data.getJSONArray(i); 
    String nameCity = city.getString(0); 
    String pop = city.getString(4); 
    //Create a object JSON or whatever you want with this data 
    JSONArray js_array = new JSONArray();  
    js_array.put(city); js_array.put(pop); 
    //And put on a list 
    js_map.put(js_array); 
} 

這是一個基本的Java編碼。 希望它是有幫助的。

+0

是的,我正在做類似的事情,你指出了我有點被卡住..有點!謝謝 – user5839