2016-10-14 24 views
-1

所以我讀了一些關於這個的問題,但我認爲人們誤解了什麼是多維數組。如何解析JSON中的多維數組android

在我的情況下,我想解析一個「真正的」二維數組,我需要解析一個JSON的座標放置標記和畫線。我簡單地分析標記但行我有這種類型的數據:

"coordinates": [ 
     [ 
     2.33849, 
     48.8896, 
     0 
     ], 
     [ 
     2.33847, 
     48.88955, 
     0 
     ], 
     [ 
     2.33846, 
     48.88951, 
     0 
     ], 
     ..... 

如果我只是做「JSONArray線= geometry.getJSONArray(」座標「);」我不會有我需要的是座標數組。

我該怎麼做,讓每個數組與兩個座標?

任何提示,評論,代碼示例將不勝感激!謝謝

+0

我不確定你在問什麼,但是JSONArray不是一個Java數組,而是一個Java數組不是真正的多維數組。 – Patrick

+0

大多數人認爲內部有多個對象的JSON數組是multidim數組。我的情況是數組與數組。像double [] []不是double [Object]。 –

回答

1
 JSONArray lines = geometry.getJSONArray("coordinates"); 
     double[][] coords = new double[lines.length()][]; 
     for (int i = 0; i < lines.length(); i++) { 
      JSONArray xyJson = lines.getJSONArray(i); 
      coords[i] = new double[xyJson.length()]; // length is always 2 
      for (int j = 0; j < xyJson.length(); j++) { 
       coords[i][j] = xyJson.getDouble(j); 
      } 
     } 
+0

我會試試這個,我想這就是我一直在尋找的!謝謝,我會告訴你它是否有效。 –

+0

它工作得很好,非常感謝你! –