java获取本机外网ip

  1. public static String getV4IP(){
    String ip = "";
    String chinaz = "http://ip.chinaz.com";

    StringBuilder inputLine = new StringBuilder();
    String read = "";
    URL url = null;
    HttpURLConnection urlConnection = null;
    BufferedReader in = null;
    try {
    url = new URL(chinaz);
    urlConnection = (HttpURLConnection) url.openConnection();
    in = new BufferedReader( new InputStreamReader(urlConnection.getInputStream(),"UTF-8"));
    while((read=in.readLine())!=null){
    inputLine.append(read+"\r\n");
    }
    //System.out.println(inputLine.toString());
    } catch (MalformedURLException e) {
    e.printStackTrace();
    } catch (IOException e) {
    e.printStackTrace();
    }finally{
    if(in!=null){
    try {
    in.close();
    } catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    }
    }


    Pattern p = Pattern.compile("\\<dd class\\=\"fz24\">(.*?)\\<\\/dd>");
    Matcher m = p.matcher(inputLine.toString());
    if(m.find()){
    String ipstr = m.group(1);
    ip = ipstr;
    //System.out.println(ipstr);
    }
    return ip;

posted @ 2018-07-13 11:22  冬天不眠  阅读(3413)  评论(0编辑  收藏  举报