1. 程式人生 > >獲取外網本機的IP地址的方法

獲取外網本機的IP地址的方法

一種可行的獲取方法,是通過http請求從網站中取出ip欄位。例如:http://ip.chinaz.com/

通過這個網址,加上簡單的正則表示式,即可得到。

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;

}