2011-07-05 5 views
0

Google GeoCodeのJSONを使用しています。これをデコードして、これからadministration_area_level_2とpostal_codeを取得する必要があります。私は結果を解析することができますが、その後は結果をリセットする方法がわかりません。私はこれをフォーマットしようとしましたが、うまくいきませんでした。あなたがリンクに従うなら、これはフォーマットされたバージョンです。Googleジオコードを解析するJSON

私はこれをJAVAにしようとしていますが、私はこれをPHPで行うことができますが、私はむしろJAVAでこれを行うでしょう。ご協力いただきありがとうございます。

http://maps.googleapis.com/maps/api/geocode/json?latlng=40.714224,-73.961452&sensor=false

{ 
    "results" : [ 
     { 
     "address_components" : [ 
      { 
       "long_name" : "279-281", 
       "short_name" : "279-281", 
       "types" : [ "street_number" ] 
      }, 
      { 
       "long_name" : "Bedford Ave", 
       "short_name" : "Bedford Ave", 
       "types" : [ "route" ] 
      }, 
      { 
       "long_name" : "Williamsburg", 
       "short_name" : "Williamsburg", 
       "types" : [ "neighborhood", "political" ] 
      }, 
      { 
       "long_name" : "Brooklyn", 
       "short_name" : "Brooklyn", 
       "types" : [ "sublocality", "political" ] 
      }, 
      { 
       "long_name" : "Kings", 
       "short_name" : "Kings", 
       "types" : [ "administrative_area_level_2", "political" ] 
      }, 
      { 
       "long_name" : "New York", 
       "short_name" : "NY", 
       "types" : [ "administrative_area_level_1", "political" ] 
      }, 
      { 
       "long_name" : "United States", 
       "short_name" : "US", 
       "types" : [ "country", "political" ] 
      }, 
      { 
       "long_name" : "11211", 
       "short_name" : "11211", 
       "types" : [ "postal_code" ] 
      } 
     ], 
     "formatted_address" : "279-281 Bedford Ave, Brooklyn, NY 11211, USA", 
     "geometry" : { 
      "bounds" : { 
       "northeast" : { 
        "lat" : 40.71450470, 
        "lng" : -73.96128740 
       }, 
       "southwest" : { 
        "lat" : 40.7139010, 
        "lng" : -73.961680 
       } 
      }, 
      "location" : { 
       "lat" : 40.71422150, 
       "lng" : -73.96144540 
      }, 
      "location_type" : "RANGE_INTERPOLATED", 
      "viewport" : { 
       "northeast" : { 
        "lat" : 40.71735047068017, 
        "lng" : -73.95833607931984 
       }, 
       "southwest" : { 
        "lat" : 40.71105522931983, 
        "lng" : -73.96463132068017 
       } 
      } 
     }, 
     "types" : [ "street_address" ] 
     }, 
     { 
     "address_components" : [ 
      { 
       "long_name" : "Williamsburg", 
       "short_name" : "Williamsburg", 
       "types" : [ "neighborhood", "political" ] 
      }, 
      { 
       "long_name" : "New York", 
       "short_name" : "New York", 
       "types" : [ "locality", "political" ] 
      }, 
      { 
       "long_name" : "Kings", 
       "short_name" : "Kings", 
       "types" : [ "administrative_area_level_2", "political" ] 
      }, 
      { 
       "long_name" : "New York", 
       "short_name" : "NY", 
       "types" : [ "administrative_area_level_1", "political" ] 
      }, 
      { 
       "long_name" : "United States", 
       "short_name" : "US", 
       "types" : [ "country", "political" ] 
      } 
     ], 
     "formatted_address" : "Williamsburg, NY, USA", 
     "geometry" : { 
      "bounds" : { 
       "northeast" : { 
        "lat" : 40.7182050, 
        "lng" : -73.9202810 
       }, 
       "southwest" : { 
        "lat" : 40.6979330, 
        "lng" : -73.96984510 
       } 
      }, 
      "location" : { 
       "lat" : 40.70644610, 
       "lng" : -73.95361629999999 
      }, 
      "location_type" : "APPROXIMATE", 
      "viewport" : { 
       "northeast" : { 
        "lat" : 40.7182050, 
        "lng" : -73.9202810 
       }, 
       "southwest" : { 
        "lat" : 40.6979330, 
        "lng" : -73.96984510 
       } 
      } 
     }, 
     "types" : [ "neighborhood", "political" ] 
     }, 
     { 
     "address_components" : [ 
      { 
       "long_name" : "11211", 
       "short_name" : "11211", 
       "types" : [ "postal_code" ] 
      }, 
      { 
       "long_name" : "Brooklyn", 
       "short_name" : "Brooklyn", 
       "types" : [ "sublocality", "political" ] 
      }, 
      { 
       "long_name" : "New York", 
       "short_name" : "New York", 
       "types" : [ "locality", "political" ] 
      }, 
      { 
       "long_name" : "New York", 
       "short_name" : "NY", 
       "types" : [ "administrative_area_level_1", "political" ] 
      }, 
      { 
       "long_name" : "United States", 
       "short_name" : "US", 
       "types" : [ "country", "political" ] 
      } 
     ], 
     "formatted_address" : "Brooklyn, NY 11211, USA", 
     "geometry" : { 
      "bounds" : { 
       "northeast" : { 
        "lat" : 40.7261370, 
        "lng" : -73.92304290 
       }, 
       "southwest" : { 
        "lat" : 40.69763590, 
        "lng" : -73.97616690 
       } 
      }, 
      "location" : { 
       "lat" : 40.71800360, 
       "lng" : -73.96537150000002 
      }, 
      "location_type" : "APPROXIMATE", 
      "viewport" : { 
       "northeast" : { 
        "lat" : 40.7261370, 
        "lng" : -73.92304290 
       }, 
       "southwest" : { 
        "lat" : 40.69763590, 
        "lng" : -73.97616690 
       } 
      } 
     }, 
     "types" : [ "postal_code" ] 
     }, 
     { 
     "address_components" : [ 
      { 
       "long_name" : "Brooklyn", 
       "short_name" : "Brooklyn", 
       "types" : [ "sublocality", "political" ] 
      }, 
      { 
       "long_name" : "New York", 
       "short_name" : "New York", 
       "types" : [ "locality", "political" ] 
      }, 
      { 
       "long_name" : "Kings", 
       "short_name" : "Kings", 
       "types" : [ "administrative_area_level_2", "political" ] 
      }, 
      { 
       "long_name" : "New York", 
       "short_name" : "NY", 
       "types" : [ "administrative_area_level_1", "political" ] 
      }, 
      { 
       "long_name" : "United States", 
       "short_name" : "US", 
       "types" : [ "country", "political" ] 
      } 
     ], 
     "formatted_address" : "Brooklyn, NY, USA", 
     "geometry" : { 
      "bounds" : { 
       "northeast" : { 
        "lat" : 40.7394460, 
        "lng" : -73.8333650 
       }, 
       "southwest" : { 
        "lat" : 40.55104190, 
        "lng" : -74.056630 
       } 
      }, 
      "location" : { 
       "lat" : 40.650, 
       "lng" : -73.950 
      }, 
      "location_type" : "APPROXIMATE", 
      "viewport" : { 
       "northeast" : { 
        "lat" : 40.7394460, 
        "lng" : -73.8333650 
       }, 
       "southwest" : { 
        "lat" : 40.55104190, 
        "lng" : -74.056630 
       } 
      } 
     }, 
     "types" : [ "sublocality", "political" ] 
     }, 
     { 
     "address_components" : [ 
      { 
       "long_name" : "Kings", 
       "short_name" : "Kings", 
       "types" : [ "administrative_area_level_2", "political" ] 
      }, 
      { 
       "long_name" : "New York", 
       "short_name" : "NY", 
       "types" : [ "administrative_area_level_1", "political" ] 
      }, 
      { 
       "long_name" : "United States", 
       "short_name" : "US", 
       "types" : [ "country", "political" ] 
      } 
     ], 
     "formatted_address" : "Kings, New York, USA", 
     "geometry" : { 
      "bounds" : { 
       "northeast" : { 
        "lat" : 40.7394460, 
        "lng" : -73.8333650 
       }, 
       "southwest" : { 
        "lat" : 40.55104190, 
        "lng" : -74.056630 
       } 
      }, 
      "location" : { 
       "lat" : 40.65287620, 
       "lng" : -73.95949399999999 
      }, 
      "location_type" : "APPROXIMATE", 
      "viewport" : { 
       "northeast" : { 
        "lat" : 40.7394460, 
        "lng" : -73.8333650 
       }, 
       "southwest" : { 
        "lat" : 40.55104190, 
        "lng" : -74.056630 
       } 
      } 
     }, 
     "types" : [ "administrative_area_level_2", "political" ] 
     }, 
     { 
     "address_components" : [ 
      { 
       "long_name" : "New York", 
       "short_name" : "New York", 
       "types" : [ "locality", "political" ] 
      }, 
      { 
       "long_name" : "New York", 
       "short_name" : "New York", 
       "types" : [ "administrative_area_level_2", "political" ] 
      }, 
      { 
       "long_name" : "New York", 
       "short_name" : "NY", 
       "types" : [ "administrative_area_level_1", "political" ] 
      }, 
      { 
       "long_name" : "United States", 
       "short_name" : "US", 
       "types" : [ "country", "political" ] 
      } 
     ], 
     "formatted_address" : "New York, NY, USA", 
     "geometry" : { 
      "bounds" : { 
       "northeast" : { 
        "lat" : 40.9175770, 
        "lng" : -73.7002720 
       }, 
       "southwest" : { 
        "lat" : 40.4773990, 
        "lng" : -74.259090 
       } 
      }, 
      "location" : { 
       "lat" : 40.71435280, 
       "lng" : -74.00597309999999 
      }, 
      "location_type" : "APPROXIMATE", 
      "viewport" : { 
       "northeast" : { 
        "lat" : 40.9175770, 
        "lng" : -73.7002720 
       }, 
       "southwest" : { 
        "lat" : 40.4773990, 
        "lng" : -74.259090 
       } 
      } 
     }, 
     "types" : [ "locality", "political" ] 
     }, 
     { 
     "address_components" : [ 
      { 
       "long_name" : "New York", 
       "short_name" : "NY", 
       "types" : [ "administrative_area_level_1", "political" ] 
      }, 
      { 
       "long_name" : "United States", 
       "short_name" : "US", 
       "types" : [ "country", "political" ] 
      } 
     ], 
     "formatted_address" : "New York, USA", 
     "geometry" : { 
      "bounds" : { 
       "northeast" : { 
        "lat" : 45.0158650, 
        "lng" : -71.7774910 
       }, 
       "southwest" : { 
        "lat" : 40.4773990, 
        "lng" : -79.762590 
       } 
      }, 
      "location" : { 
       "lat" : 43.29942850, 
       "lng" : -74.21793260000001 
      }, 
      "location_type" : "APPROXIMATE", 
      "viewport" : { 
       "northeast" : { 
        "lat" : 45.0158650, 
        "lng" : -71.7774910 
       }, 
       "southwest" : { 
        "lat" : 40.4773990, 
        "lng" : -79.762590 
       } 
      } 
     }, 
     "types" : [ "administrative_area_level_1", "political" ] 
     }, 
     { 
     "address_components" : [ 
      { 
       "long_name" : "United States", 
       "short_name" : "US", 
       "types" : [ "country", "political" ] 
      } 
     ], 
     "formatted_address" : "United States", 
     "geometry" : { 
      "bounds" : { 
       "northeast" : { 
        "lat" : 71.53879999999999, 
        "lng" : -66.88507489999999 
       }, 
       "southwest" : { 
        "lat" : 18.77630, 
        "lng" : 170.59570 
       } 
      }, 
      "location" : { 
       "lat" : 37.090240, 
       "lng" : -95.7128910 
      }, 
      "location_type" : "APPROXIMATE", 
      "viewport" : { 
       "northeast" : { 
        "lat" : 71.53879999999999, 
        "lng" : -66.88507489999999 
       }, 
       "southwest" : { 
        "lat" : 18.77630, 
        "lng" : 170.59570 
       } 
      } 
     }, 
     "types" : [ "country", "political" ] 
     } 
    ], 
    "status" : "OK" 
} 
+1

* JSON解析ライブラリを使用して試しましたか? –

+0

javaのjsonを解析するヒントについてはhttp://stackoverflow.com/questions/1688099/converting-json-to-java/1688182#1688182を参照してください。 – Matten

+0

私はそれをエラーなく解析でき、上記の結果を文字列の形で得ることができます。私は郵便番号と管理者レベル2の抽出に問題があります。これは私が得ることのできない部分です。 –

答えて

-4

私はそれを把握するために管理。 Stringから必要なものが得られるまで、各オブジェクトをループするコードを書きました。今日はコードを投稿します。ご協力ありがとうございました。そのデータだけで、誰かがもっと簡単な方法をとっているかもしれないと思った。

+1

コードはどこですか? –

+0

コードは必要ありません。彼はアプローチと彼が取った彼の方法を説明した。それは人々がこの問題を解決するのを助けることができるヒントなので、それをdownvoteしないでください! – WoIIe