java 经纬度解析地址地理位置信息

论坛 期权论坛 编程之家     
选择匿名的用户   2021-5-17 00:33   11   0
/***
  * 根据经伟度得到详细的地址信息
  * @param x
  * @param y
  * @throws IOException
  * @throws UnsupportedEncodingException
  */
 public String getaddressforxybyGooglehttpconnection(String x,String y) throws IOException
 {
  if(x.length() >9){x = x.substring(0,7);}
  if(y.length()>8){y = y.substring(0,6);}
  URL url = null;
  String mapurl="http://maps.google.cn/maps/geo?output=csv&key=abcdef&q=" +Float.parseFloat(y)/100000+ "," + Float.parseFloat(x)/100000 ;
  
  String address="无法从地理信息服务器上获得此位置的地理信息";//取地图的地址
  StringBuffer strBuffer = new StringBuffer();
  HttpURLConnection connection = null;    
  DataInputStream in = null;
  try {
   url = new URL(mapurl);          
    connection = (HttpURLConnection) url.openConnection();
    connection.setRequestMethod("GET"); 
    connection.setUseCaches(false);   
    connection.setDefaultUseCaches(false);                    
    connection.setDoInput(true);  
    connection.setDoOutput(true);       
      connection.setConnectTimeout(1000);
      connection.setReadTimeout(1000);    
      in = new DataInputStream(connection.getInputStream());               
      int   all=   in.available();  
      int   code   =   connection.getResponseCode();   
      if(code   !=   connection.HTTP_OK)   
            {                           
                return address ;
            }   
            else   
            {   
             byte[]   b=   new   byte[all];   
            in.read(b);     
              String strAddress=   new   String(b,"UTF-8"); //GBK  2011-04-28
               String[] m_sAddress = strAddress.split(",");
                if (m_sAddress.length == 3)
                {
                 address = m_sAddress[2];
                }
                else
                {
                 address = "无法获取地址";
                }
                //address   =   new   String(b,"UTF-8"); //GBK  2011-04-28
   }                                                           
      connection.disconnect();
      in.close();         
     } catch (Exception e)
     {       
      address="无法从地理信息服务器上获得此位置的地理信息";//取地图的地址
     } 
     finally
     { 
      connection.disconnect();
      in.close();
     }
  address = address.replace('"', ' ');
  address = address.replace("<?xml version= 1.0  encoding= GBK ?><R><code>0</code><msg>", "");
  address = address.replace("</msg></R>", "");
  return address;
 }

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP