2012-05-20 29 views
1

它打算好,直到我需要解析的地方類型,文件的組織是這樣的:解析JSON文件的「類型」

 "geometry" : { 
     "location" : { 
      "lat" : 45.7849210, 
      "lng" : 11.8724490 
     }, 
     "viewport" : { 
      "northeast" : { 
       "lat" : 45.81619110, 
       "lng" : 11.89575470 
      }, 
      "southwest" : { 
       "lat" : 45.75432980, 
       "lng" : 11.84532520 
      } 
     } 
    }, 
    "icon" : "http://maps.gstatic.com/mapfiles/place_api/icons/geocode-71.png", 
    "id" : "a454072e2ba71d4e2331e39099261f086cd11d1e", 
    "name" : "Fonte", 
    "reference" : "CnRtAAAAUaGSsbXRv05lApqXueEKjOAjtkpEDz07ioe3vPS9HqpOIJSTTQWYObc6o6GfEq-pzVUtKT03oRWNx6ld-rUfdat47e8W3NbSsLY1NldO9iQEUjQOM9kIIOix8xLAvqh5YHUNTAela4Mo8HGSJPPBhhIQ9j4Uy_WrQtFO7qxirA0UHRoUsmY0ngstG5BBiHQNLkLgxTpsDEY", 
    "types" : [ "locality", "political" ], 
    "vicinity" : "Fonte" 
    }, 

由於可能注意到類型是字符串數組我嘗試這樣的做法:

JSONArray results = o.getJSONArray("results"); 
    JSONObject tempObject = results.getJSONObject(0); 
    JSONArray typee = tempObject.getJSONArray("types"); 
    String a = typee.getJSONObject(0).toString(); 

但它並不work.Any幫助將appreciated.The整個JSON可以在這裏看到:https://maps.googleapis.com/maps/api/place/search/json?location=45.7909,11.8700&radius=500&key=AIzaSyC9Ob9_u-2mxCHeItDHytDLmZP-P1QCejw&sensor=true

+2

定義「不起作用」。 –

+0

我有ListView,它將按名稱顯示位置,類型數組和其他一些成員中的第一個「類型」。它工作良好,直到我嘗試添加類型,現在ListView不顯示任何內容。但Appliaction不崩潰。 – NiVeR

+0

然後你的問題就在你的'ListAdapter'中。 – CommonsWare

回答

0
JSONArray typee = tempObject.getJSONArray("types"); 
String a = typee.getString(0); 
String b = typee.getString(1); 

上面將返回到locality可變apolitical到可變b。如果types可能具有可變數量的元素,則使用typee.length()來找出JSONArray中有多少元素。

+0

+1給答案。謝謝你:) – NiVeR