首页 > 学院 > 开发设计 > 正文

通过地址定位坐标

2019-11-15 00:48:14
字体:
来源:转载
供稿:网友
通过地址定位坐标

随笔写来玩玩

public class getXYByAliyunAPI {    public static void main(String[] args) {        Connection conn =null;        FileOutputStream fis =null;        try {            conn = JDBCUtil.getConnection();            PReparedStatement pstm = conn.prepareStatement("select unitCode,REPLACE(unitAddress, '#', '') from useWaterUnit");            ResultSet rs =pstm.executeQuery();            while(rs.next()){                String unitAddress = rs.getString(2);                String unitCode = rs.getString(1)+",";                String string= sendGet("http://gc.ditu.aliyun.com/geocoding", "a="+unitAddress+"&c=成都");                string = string.replace("}", "");                string = string.replace("{", "");                string = string.replace("/"", "");                string = string.replace(":", "");                String[] strings = string.split(",");                for (String s : strings) {                    s = s.trim();                    if(s.indexOf("lon")!=-1){                        unitCode+=s.substring(s.indexOf("lon") + 3, s.length())+",";                        System.out.println(unitCode+s.substring(s.indexOf("lon") + 3, s.length()));                    }                    if(s.indexOf("lat")!=-1){                        unitCode+=s.substring(s.indexOf("lat") + 3, s.length())+",/r/n";                        System.out.println(unitCode+s.substring(s.indexOf("lat") + 3, s.length()));                    }                }                fis = new FileOutputStream("d:/001.txt", true);                fis.write(unitCode.getBytes());                fis.flush();            }        } catch (SQLException e) {            e.printStackTrace();        } catch (ClassNotFoundException e) {            e.printStackTrace();        } catch (FileNotFoundException e) {            e.printStackTrace();        } catch (IOException e) {            e.printStackTrace();        } finally {            try {                if(null!=conn){                    conn.close();                }                if(null!=fis){                    fis.close();                }            } catch (SQLException e) {                e.printStackTrace();            } catch (IOException e) {                e.printStackTrace();            }        }    }    public static String sendGet(String url, String param) {        String result = "";        BufferedReader in = null;        try {            String urlNameString = url + "?" + param;            URL realUrl = new URL(urlNameString);            // 打开和URL之间的连接            URLConnection connection = realUrl.openConnection();            // 设置通用的请求属性            connection.setRequestProperty("user-agent", "directclient");            // 建立实际的连接            connection.connect();            // 获取所有响应头字段            Map<String, List<String>> map = connection.getHeaderFields();            // 遍历所有的响应头字段            for (String key : map.keySet()) {         //       System.out.println(key + "--->" + map.get(key));            }            // 定义 BufferedReader输入流来读取URL的响应            in = new BufferedReader(new InputStreamReader(                    connection.getInputStream()));            String line;            while ((line = in.readLine()) != null) {                result += line;            }        } catch (Exception e) {            System.out.println("发送GET请求出现异常!" + e);            e.printStackTrace();        }        // 使用finally块来关闭输入流        finally {            try {                if (in != null) {                    in.close();                }            } catch (Exception e2) {                e2.printStackTrace();            }        }        return result;    }}

  


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表