2014-11-04 6 views
1

Я столкнулся с этой проблемой, из API я получаю расширение JSON с одним объектом, называемым координатами, этот объект представляет собой массив, который включает массив array.GSON parse Array в массиве в массиве

Чтобы быть более ясный взгляд на этот пример:

"coordinates": [ 
       [ 
        [ 
         -0.087118, 
         51.508823 
        ] 

Или в этой картинке вы можете увидеть это лучше

Or in this pic you can see it better

Так что теперь я пытаюсь разобрать его с помощью GSON и Я не добился успеха. Может ли кто-нибудь дать мне представление о том, как создать класс для этого?

Спасибо

+0

Текст пример не согласуется с картиной – wvdz

+0

почему нет? из-за чисел? в pic я использую Json editor chrome extension. В любом случае это решение теперь – Marcel

+0

Из текстового примера неясно, является ли это '[[[x, y], [x, y] ...]] или' [[[x, y]], [[x, y]], [[x, y]], [[x, y]], [[x, y]], [[x, y]], [[x, y] ]], ...] ' – wvdz

ответ

5
public class Coordinate extends ArrayList<Arraylist<Arraylist<float>>>{ 
} 
+0

Затем скажите, что координат.get (0) .get (0) .get (0) и т. Д. – reactivemobile

+1

Удивительно, что он работает! спасибо человеку, я с ума сходил с этого – Marcel

+0

Отлично, рад, что он работает. – reactivemobile

0

Я могу дать вам пример, где бы вы не использовать Gson, но вы получите идею. Допустим, что вы кладете JSON в товару Строка называется JSON

String json = ""coordinates": [[[-0.087118,51.508823]"; 

JSONArray firstArray = new JSONArray(json); 
     for (int i =0; i < firstArray.length(); i++){ 

      JSONArray secondArray = firstArray.getJSONArray(i); 
      for (int j =0; i < secondArray.length(); j++){ 

       JSONArray thirdArray = secondArray.JSONArray(j); 
       for (int q =0; i < thirdArray.length(); q++){ 

       int x = thirdArray.getInteger("0"); 
       int y = thirdArray.getInteger("1"); 
       } 
      } 
    } 
+1

спасибо за подход, но есть ответ @reactivemobile works – Marcel

Смежные вопросы