zoukankan      html  css  js  c++  java
  • 提供程序-java根据纬度 经度值获取用户的地理位置

    package com.wangku.was.utils;

    import java.io.BufferedReader;
    import java.io.InputStreamReader;
    import java.net.URL;
    import java.net.URLConnection;

    import net.sf.json.JSONObject;

    /**
     * 根据纬度 经度值获取用户的地理位置
     * @ClassName: LatitudeUtil  
     * @author zhangmeijie
     * @date 2015-6-29 下午1:44:44
     * @exception
     * @since 1.0
     */
    public class LatitudeUtil {

        /**
         * @Title: geocodeAddr
         * @param latitude 纬度
         * @param longitude 经度
         * @return
         * @author zhangmeijie
         * @date 2015-6-29 下午1:42:24
         * @exception
         * @since 1.0
         */
        @SuppressWarnings("static-access")
        public static String getAddressByLatAndLon(String latitude, String longitude) {
            String address = null;
            String url = String.format("http://api.map.baidu.com/geocoder/v2/?ak=pmCgmADsAsD9rEXkqWNcTzjd&location=%s,%s&output=json&pois=1", latitude, longitude);
            try {
                 URL myURL = new URL(url);
                URLConnection httpsConn = (URLConnection) myURL.openConnection();
                if (httpsConn != null) {
                    InputStreamReader insr = new InputStreamReader(httpsConn.getInputStream(), "UTF-8");
                    BufferedReader br = new BufferedReader(insr);
                    String data = null;
                    StringBuffer sb = new StringBuffer("");
                    while ((data = br.readLine()) != null) {
                        sb.append(data);
                    }
                    JSONObject jsonObject = new JSONObject().fromObject(sb.toString());
                    address = jsonObject.getJSONObject("result").getString("formatted_address");
                    insr.close();
                } else {
                    return null;
                }
            } catch (Exception e) {
                e.printStackTrace();
                return null;
            }
            return address;
        }
        
        /**
         * 测试方法
         * @Title: main
         * @param
         * @return
         * @author zhangmeijie
         * @date 2015-6-29 下午1:44:50
         * @exception
         * @since 1.0
         */
        public static void main(String[] args) {
            String addr = getAddressByLatAndLon("22.53836564", "114.02681090");// 纬度 经度
            System.out.println(addr);
        }
        
    }

  • 相关阅读:
    记录CTF一些奇技滛巧
    FISCO BCOS 多服务器分布式部署
    网络1911、1912 D&S第3次作业--批改总结
    DVWA渗透笔记
    Python——flask漏洞探究
    Java团队课程设计——基于学院的搜索引擎
    Java课程设计之——Web前端
    Java课程设计之——爬虫篇
    elasticsearch 7.5.0 学习笔记
    SpringCloud系列(一):Eureka 服务注册与服务发现
  • 原文地址:https://www.cnblogs.com/mjzhang/p/4607323.html
Copyright © 2011-2022 走看看