java获取外网IP

  public static String getOutNetIP(String u) throws Exception{
    String ipstr="";
        HttpURLConnection httpConn = null;
        httpConn = (HttpURLConnection) new URL(u).openConnection();
        HttpURLConnection.setFollowRedirects(true);
        httpConn.setRequestMethod("GET");
        httpConn.setRequestProperty("User-Agent","Mozilla/4.0 (compatible; MSIE 6.0; Windows 2000)");
        InputStream in = httpConn.getInputStream();
        byte[] bytes=new byte[1024];
        int offset = 0;
        int numRead = 0;
        while (offset < bytes.length && (numRead=in.read(bytes, offset, bytes.length-offset)) >= 0)
            offset += numRead;
        
        String receivedString=new String(bytes,"UTF-8");
        in.close();
        httpConn.disconnect();
        Pattern pattern=Pattern.compile("(\\d{1,3})[.](\\d{1,3})[.](\\d{1,3})[.](\\d{1,3})", Pattern.CASE_INSENSITIVE);    
        Matcher matcher=pattern.matcher(receivedString);        
        while(matcher.find())
        ipstr=matcher.group(0);
    return ipstr;

    }

/*

*获取外网ip结果

*/

    public static String getOutNetIP() throws Exception{
    return getOutNetIP("http://checkip.dyndns.org/");
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值