您现在的位置是:首页 >

谷歌地图api国内 java如何通过google map api实现地址解析

火烧 2022-02-24 17:02:33 1050
java如何通过google ma a i实现地址解析   地址解析就是将地址 如 广东省广州市 转换为地理坐标 如经度 纬度 的过程 google ma a i提供两种方法实现地址解析   第一种

java如何通过google map api实现地址解析  

  地址解析就是将地址(如 广东省广州市)转换为地理坐标(如经度 纬度 )的过程 google map api提供两种方法实现地址解析

  第一种 是通过使用 GClientGeocoder 对象来实现 大家可以参考google map api的相关文档 以下是摘自google的相关代码

  var map = new GMap (document getElementById( map_canvas ));

谷歌地图api国内 java如何通过google map api实现地址解析

  var geocoder = new GClientGeocoder();

  function showAddress(address) {

  geocoder getLatLng(

  address

  function(point) {

  if (!point) {

  alert( 无法解析: + address);

  } else {

  map setCenter(point );

  var marker = new GMarker(point);

  map addOverlay(marker);

  marker openInfoWindowHtml(address);

  }

  }

  );

  }

  第二种方法 就是通过HTTP请求直接访问 调用参数等相关说明请参考 CN/apis/maps/documentation/l

  而通过java实现的方法如下

  /**

  * 利用googlemap api 通过 HTTP 进行地址解析

  * @param address 地址

  * @return HTTP状态代码 精确度(请参见精确度常数) 纬度 经度

  */

  private String getLatlng(String address){

  String ret = ;

  if(address != null && !address equals( )){

  try {

  address = URLEncoder encode(address UTF );//进行这一步是为了避免乱码

  } catch (UnsupportedEncodingException e ) {

  logger error( 转码失败 e );

  }

  String[]  arr = new String[ ];

  arr[ ] = address;

  arr[ ] = OUTPUT;

  arr[ ] = SENSOR;

  arr[ ] = KEY;

  String url = MessageFormat format( { }&output={ }&sensor={ }&key={ } arr);

  URL urlmy = null;

  try {

  urlmy = new URL(url);

  HttpURLConnection con = (HttpURLConnection) urlmy openConnection();

  con setFollowRedirects (true );

  con setInstanceFollowRedirects(false );

  nnect();

  BufferedReader br = new BufferedReader(new InputStreamReader(con getInputStream() UTF ));

  String s = ;

  StringBuffer sb = new StringBuffer( );

  while ((s = br readLine()) != null ) {

  sb append(s+ rn );

  }

  ret = +sb;

  } catch (MalformedURLException e) {

  logger error( 通过方式获取地址信息失败 e);

  } catch (IOException e) {

  logger error( 文件读取失败 e);

  }

  }

  return ret;

  }

lishixinzhi/Article/program/Java/hx/201311/27069  
永远跟党走
  • 如果你觉得本站很棒,可以通过扫码支付打赏哦!

    • 微信收款码
    • 支付宝收款码