`
RandyWei
  • 浏览: 65186 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
收藏列表
标题 标签 来源
根据城市名称获取经纬度
/**
			 * 根据城市名称获取经纬度
			 * 
			 * @param city
			        城市中文名称、拼音、英文
			 * @return location 
			        经纬度数组,0为经度,1为纬度
			 */
			private String[] getLocationByCityName(String city) {
				String[] location = new String[2];
				try {
					HttpClient httpClient = new DefaultHttpClient();
					HttpPost httpPost = new HttpPost(
							"http://maps.google.com/maps/geo?q=" + city);
					int res = 0;
					res = httpClient.execute(httpPost).getStatusLine()
							.getStatusCode();
					if (res == 200) {
						/*
						 * 当返回码为200时,做处理 得到服务器端返回json数据,并做处理
						 */
						HttpResponse httpResponse = httpClient
								.execute(httpPost);
						StringBuilder builder = new StringBuilder();
						BufferedReader bufferedReader2 = new BufferedReader(
								new InputStreamReader(httpResponse.getEntity()
										.getContent()));
						for (String s = bufferedReader2.readLine(); s != null; s = bufferedReader2
								.readLine()) {
							builder.append(s);
						}
						/**
						 * 这里需要分析服务器回传的json格式数据,
						 */
						JSONObject jsonObject = new JSONObject(builder
								.toString());
						JSONArray jsonArray = jsonObject
								.getJSONArray("Placemark");
						for (int i = 0; i < jsonArray.length(); i++) {
							JSONObject jsonObject2 = (JSONObject) jsonArray
									.opt(i);
							JSONObject jsonObject3 = new JSONObject(jsonObject2
									.getString("Point"));
							JSONArray jsonArray1 = jsonObject3
									.getJSONArray("coordinates");
							location[0] = (String) jsonArray1.get(0);
							location[1] = (String) jsonArray1.get(1);
						}
					}
				} catch (ClientProtocolException e) {
					e.printStackTrace();
				} catch (IllegalStateException e) {
					e.printStackTrace();
				} catch (IOException e) {
					e.printStackTrace();
				} catch (JSONException e) {
					e.printStackTrace();
				}
				return location;
			}
		});
Global site tag (gtag.js) - Google Analytics